/* ------------------------------ */
/* ----- Typography / Colors ---- */
/* ------------------------------ */

@font-face {
  font-family: 'Bandeins Strange';
  src: url('/wp-content/themes/augenweide_child/fonts/bandeins-strange-variable.woff2') format("woff2 supports variations"),
       url('/wp-content/themes/augenweide_child/fonts/bandeins-strange-variable.woff2') format("woff2-variations");
  font-weight: 100 1000;
  font-display: swap;
}


/* ------------------------------ */
/* ---------- Variables --------- */
/* ------------------------------ */

:root {
  /* Brand Fonts */
  --brand-font: 'Bandeins Strange';

  /* Brand Colors*/
  --brand-blue: #2A5CD4;
  --brand-yellow: #FCFF00;
  --brand-black: #000000;
  --brand-grey: #F8F7F3;
  --brand-white: #ffffff;
  
  /* Font Styling */
  

  --line-height-3: 1;
  --line-height-2: 1.36;
  --line-height-1: 1.25;

  /* Hover & Transition */
  --opacity-2: .7;
  --opacity-1: .55;
  --transition-delay: .25s;
  --transition-4: 1s;
  --transition-3: .6s;
  --transition-2: .4s;
  --transition-1: .25s;

  /* Layout */
  --width-content: 920px;
}


/* ------------------------------ */
/* ------ Minify & Flexbox ------ */
/* ------------------------------ */

.inside,.site_wrapper{position:relative}main,picture{display:block}img,picture{max-width:100%}body,ul{margin:0}[type=search],input,textarea{-webkit-appearance:none}*{-webkit-box-sizing:border-box;box-sizing:border-box}:focus{outline:0!important}html{min-height:100.1%;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.inside{margin:0 auto}a,button,input{-ms-touch-action:manipulation;touch-action:manipulation}ul{list-style-type:none;padding:0}img{border-style:none;vertical-align:top}img:not(.logo){height:auto}input,textarea{border-radius:0}button,input,optgroup,select,textarea{font-family:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}textarea{overflow:auto}address{font-style:normal}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[hidden]{display:none}

.row{-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.row_simple{display:-ms-flexbox;display:-webkit-box;display:flex;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;-ms-flex-wrap:wrap;flex-wrap:wrap}.row.reverse,.row_simple.reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.col,.col-xs-12,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xs-3{-ms-flex-preferred-size:25%;flex-basis:25%;max-width:25%}.col-xs-4{-ms-flex-preferred-size:33.33333333%;flex-basis:33.33333333%;max-width:33.33333333%}.col-xs-5{-ms-flex-preferred-size:41.66666667%;flex-basis:41.66666667%;max-width:41.66666667%}.col-xs-6{-ms-flex-preferred-size:50%;flex-basis:50%;max-width:50%}.col-xs-7{-ms-flex-preferred-size:58.33333333%;flex-basis:58.33333333%;max-width:58.33333333%}.col-xs-8{-ms-flex-preferred-size:66.66666667%;flex-basis:66.66666667%;max-width:66.66666667%}.col-xs-9{-ms-flex-preferred-size:75%;flex-basis:75%;max-width:75%}.col-xs-12{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.center-xs{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center}.end-xs{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:end}.top-xs{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.middle-xs{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.bottom-xs{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.between-xs{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (min-width:576px){.col-s-12,.col-s-3,.col-s-4,.col-s-5,.col-s-6,.col-s-7,.col-s-8,.col-s-9{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-s-3{-ms-flex-preferred-size:25%;flex-basis:25%;max-width:25%}.col-s-4{-ms-flex-preferred-size:33.33333333%;flex-basis:33.33333333%;max-width:33.33333333%}.col-s-5{-ms-flex-preferred-size:41.66666667%;flex-basis:41.66666667%;max-width:41.66666667%}.col-s-6{-ms-flex-preferred-size:50%;flex-basis:50%;max-width:50%}.col-s-7{-ms-flex-preferred-size:58.33333333%;flex-basis:58.33333333%;max-width:58.33333333%}.col-s-8{-ms-flex-preferred-size:66.66666667%;flex-basis:66.66666667%;max-width:66.66666667%}.col-s-9{-ms-flex-preferred-size:75%;flex-basis:75%;max-width:75%}.col-s-12{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.center-s{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center}.end-s{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:end}.top-s{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.middle-s{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.bottom-s{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.between-s{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}}@media only screen and (min-width:768px){.col-m-12,.col-m-3,.col-m-4,.col-m-5,.col-m-6,.col-m-7,.col-m-8,.col-m-9{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-m-3{-ms-flex-preferred-size:25%;flex-basis:25%;max-width:25%}.col-m-4{-ms-flex-preferred-size:33.33333333%;flex-basis:33.33333333%;max-width:33.33333333%}.col-m-5{-ms-flex-preferred-size:41.66666667%;flex-basis:41.66666667%;max-width:41.66666667%}.col-m-6{-ms-flex-preferred-size:50%;flex-basis:50%;max-width:50%}.col-m-7{-ms-flex-preferred-size:58.33333333%;flex-basis:58.33333333%;max-width:58.33333333%}.col-m-8{-ms-flex-preferred-size:66.66666667%;flex-basis:66.66666667%;max-width:66.66666667%}.col-m-9{-ms-flex-preferred-size:75%;flex-basis:75%;max-width:75%}.col-m-12{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.center-m{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center}.end-m{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:end}.top-m{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.middle-m{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.bottom-m{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.between-m{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}}@media only screen and (min-width:992px){.col-l-12,.col-l-3,.col-l-4,.col-l-5,.col-l-6,.col-l-7,.col-l-8,.col-l-9{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-l-3{-ms-flex-preferred-size:25%;flex-basis:25%;max-width:25%}.col-l-4{-ms-flex-preferred-size:33.33333333%;flex-basis:33.33333333%;max-width:33.33333333%}.col-l-5{-ms-flex-preferred-size:41.66666667%;flex-basis:41.66666667%;max-width:41.66666667%}.col-l-6{-ms-flex-preferred-size:50%;flex-basis:50%;max-width:50%}.col-l-7{-ms-flex-preferred-size:58.33333333%;flex-basis:58.33333333%;max-width:58.33333333%}.col-l-8{-ms-flex-preferred-size:66.66666667%;flex-basis:66.66666667%;max-width:66.66666667%}.col-l-9{-ms-flex-preferred-size:75%;flex-basis:75%;max-width:75%}.col-l-12{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.center-l{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center}.end-l{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:end}.top-l{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.middle-l{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.bottom-l{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.between-l{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}}@media only screen and (min-width:1240px){.col-xl-12,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-3{-ms-flex-preferred-size:25%;flex-basis:25%;max-width:25%}.col-xl-4{-ms-flex-preferred-size:33.33333333%;flex-basis:33.33333333%;max-width:33.33333333%}.col-xl-5{-ms-flex-preferred-size:41.66666667%;flex-basis:41.66666667%;max-width:41.66666667%}.col-xl-6{-ms-flex-preferred-size:50%;flex-basis:50%;max-width:50%}.col-xl-7{-ms-flex-preferred-size:58.33333333%;flex-basis:58.33333333%;max-width:58.33333333%}.col-xl-8{-ms-flex-preferred-size:66.66666667%;flex-basis:66.66666667%;max-width:66.66666667%}.col-xl-9{-ms-flex-preferred-size:75%;flex-basis:75%;max-width:75%}.col-xl-12{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.center-xl{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center}.end-xl{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:end}.top-xl{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.middle-xl{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.bottom-xl{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.between-xl{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}}@media only screen and (min-width:1400px){.col-xxl-12,.col-xxl-3,.col-xxl-4,.col-xxl-5,.col-xxl-6,.col-xxl-7,.col-xxl-8,.col-xxl-9{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-3{-ms-flex-preferred-size:25%;flex-basis:25%;max-width:25%}.col-xxl-4{-ms-flex-preferred-size:33.33333333%;flex-basis:33.33333333%;max-width:33.33333333%}.col-xxl-5{-ms-flex-preferred-size:41.66666667%;flex-basis:41.66666667%;max-width:41.66666667%}.col-xxl-6{-ms-flex-preferred-size:50%;flex-basis:50%;max-width:50%}.col-xxl-7{-ms-flex-preferred-size:58.33333333%;flex-basis:58.33333333%;max-width:58.33333333%}.col-xxl-8{-ms-flex-preferred-size:66.66666667%;flex-basis:66.66666667%;max-width:66.66666667%}.col-xxl-9{-ms-flex-preferred-size:75%;flex-basis:75%;max-width:75%}.col-xxl-12{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.center-xxl{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center}.end-xxl{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:end}.top-xxl{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.middle-xxl{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.bottom-xxl{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.between-xxl{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}}



/* ------------------------------ */
/* ----------- General ---------- */
/* ------------------------------ */

::-moz-selection {
  color: var(--brand-black);
  background: var(--brand-yellow);
}

::selection {
  color: var(--brand-black);
  background: var(--brand-yellow);
}

::-moz-selection {
  color: var(--brand-black);
  background: var(--brand-yellow);
}

img::-moz-selection, picture::-moz-selection, video::-moz-selection, iframe::-moz-selection {
  background-color: transparent;
}

img::selection, picture::selection, video::selection, iframe::selection {
  background-color: transparent;
}

img::-moz-selection, picture::-moz-selection, video::-moz-selection, iframe::-moz-selection {
  background-color: transparent;
}

html {
  font-size: 20px;
}

body {
  font-family: var(--brand-font);
  font-size: var(--font-size-standard);
  font-variation-settings: "wdth" 0, "wght" 400;
  line-height: var(--line-height-1);
  color: var(--brand-black);
  -webkit-tap-highlight-color: transparent;
}

.site_wrapper {
  background-color: var(--brand-white);
}

h1, .typography--h1, h2, .typography--h2, h3, .typography--h3 {
  line-height: var(--line-height-3);
}

.typography--huge, h1:not(.typography--h2):not(.typography--h3), .typography--h1, h2:not(.typography--h3):not(.typography--lead), .typography--h2, .typography--h2-big {
  -webkit-font-feature-settings: 'ss01' on;
          font-feature-settings: 'ss01' on;
}

h1.typography--h2:first-child, h2:not(.typography--h3):not(.typography--h4):not(.typography--lead):first-child, h2.typography--h1:first-child, h2.typography--h3:first-child, h3:first-child, h3.typography--h2:first-child, h3.typography--h4:first-child, 
h4:first-child, h4.typography--h2:first-child, h4.typography--h3:first-child, .section > .section__title:first-child h2, .section > .section__title:first-child h3, .section > .section__title:first-child h4 {
  margin-top: 0;
}

.typography--huge {
  font-size: var(--font-size-10);
  font-variation-settings: "wdth" 0, "wght" 550;
  line-height: var(--line-height-3);
  letter-spacing: calc(-1 * (var(--font-size-10) * 0.01));
}

.typography--h1-big {
  font-size: var(--font-size-9);
  line-height: var(--line-height-3);
  letter-spacing: calc(-1 * (var(--font-size-9) * 0.01));
}

h1:not(.typography--h2):not(.typography--huge), .typography--h1 {
  font-variation-settings: "wdth" 0, "wght" 500;
}

h1:not(.typography--h2):not(.typography--huge):not(.typography--h1-big), .typography--h1 {
  font-size: var(--font-size-8);
  letter-spacing: calc(-1 * (var(--font-size-8) * 0.01));
}

h1:not(.typography--h2) {
  margin-top: 0;
  margin-bottom: var(--spacing-6);
}

h2, h3, .section__title h2, .section__title h3, .section__text + .section__text .text h2:first-child, .section__text + .section__text .text h3:first-child {
  margin-top: var(--spacing-7);
}

.typography--h2-big {
  font-size: var(--font-size-7);
  font-variation-settings: "wdth" 0, "wght" 500;
  line-height: var(--line-height-3);
}

h2:not(.typography--h3):not(.typography--h4):not(.typography--lead):not(.typography--small):not(.typography--toptitle):not(.typography--toptitle-big), .typography--h2 {
  font-size: var(--font-size-6);
  font-variation-settings: "wdth" 0, "wght" 500;
}

h2:not(.typography--h3):not(.typography--h4):not(.typography--toptitle):not(.typography--lead):not(.typography--toptitle-big), h1.typography--h2 {
  margin-top: var(--spacing-10-5);
  margin-bottom: var(--spacing-5);
}

h2.typography--toptitle, h2.typography--toptitle-big {
  margin-top: 0;
  margin-bottom: var(--spacing-8);
}

h2.typography--toptitle-big {
  font-size: var(--font-size-2-5);
}

h3:not(.typography--h4):not(.typography--h2):not(.typography--h2-big), .typography--h3 {
  font-size: var(--font-size-5);
  font-variation-settings: "wdth" 0, "wght" 500;
}

h3:not(.typography--h4):not(.typography--h2):not(.typography--h2-big), h2.typography--h3 {
  margin-top: var(--spacing-10);
  margin-bottom: var(--spacing-4);
}

.typography--lead {
  font-size: var(--font-size-4);
  line-height: 1.2;
}

h4, .typography--h4 {
  font-size: var(--font-size-3);
  font-variation-settings: "wdth" 0, "wght" 500;
  line-height: var(--line-height-1);
}

h4, h3.typography--h4 {
  margin-bottom: var(--spacing-3);
}

h4, h3.typography--h4, .section__title h4, .section__text + .section__text .text h4:first-child {
  margin-top: var(--spacing-9);
}

.typography--lead-small {
  font-size: var(--font-size-3);
  font-variation-settings: "wdth" 0, "wght" 300;
  line-height: var(--line-height-1);
}

.typography--copy {
  font-size: var(--font-size-standard);
}

.typography--small, h2.typography--toptitle {
  font-size: var(--font-size-1);
  font-variation-settings: "wdth" 0, "wght" 500;
}

span.line {
  position: relative;
  display: inline-block;
  height: 10px;
  margin: 0 5px;
}

.typography--toptitle-big span.line {
  margin: 0 7px;
}

span.line::before {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: 100%;
  background-color: var(--brand-black);
}

a {
  color: var(--brand-black);
  text-decoration: none;
}

a.full {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  max-width: 100%;
  text-indent: -30000px;
  z-index: 10;
  text-decoration: none;
  text-align: left;
}

a.full > span {
  position: absolute;
  height: 1px;
  width: 1px;
  clip: rect(1px,1px,1px,1px);
  border: 0;
  overflow: hidden;
}

a.full::before, a.full::after {
  display: none;
}

section p a:not(.full):not(.contact), section li a:not(.full), label a {
  position: relative;

  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;

  -webkit-transition: opacity var(--transition-2);
  transition: opacity var(--transition-2);
}

.no-touchevents section p a:not(.full):hover, .no-touchevents section li a:not(.full):hover, .no-touchevents label a:hover {
  opacity: var(--opacity-1);
}

p, main ul, address, .site_nav__info ul {
  margin: 0 0 var(--spacing-4);
}

p:last-child, ul:last-child, address:last-child {
  margin-bottom: 0;
}

main p + ul {
  margin-top: var(--spacing-6);
}

main .accordion__inside p + ul {
  margin-top: var(--spacing-4);
}

b, strong {
  font-variation-settings: "wdth" 0, "wght" 600;
}

main ul li {
  position: relative;
}

main ul li + li {
  margin-top: 8px;
}

main ul li::before {
  content: "";
  position: absolute;
  left: 0;
  height: 1px;
  background-color: var(--brand-black);
}

span[class$="--hide-text"], span.hide-text {
  position: absolute;
  height: 1px;
  width: 1px;
  clip: rect(1px,1px,1px,1px);
  border: 0;
  overflow: hidden;
}

span.spacing {
  display: inline-block;
  width: 9.6%;
}

h1, h2, h3, h4, main p, main ul, main a, main span {
  max-width: var(--width-content);
}

.section--fullwidth h1, .section--fullwidth h2, .section--fullwidth h3, .section--fullwidth h4, main .section--fullwidth p, main .section--fullwidth ul, main .section--fullwidth a, main .section--fullwidth span {
  max-width: 100%;
}

.pattern {
  position: relative;
  overflow: hidden;
}

.pattern > img {
  max-width: unset;
}

.section--white {
  background-color: var(--brand-white);
}

.section--color {
  background-color: var(--brand-black);
}

.section--light, .section > div[class*="--light"] {
  background-color: var(--brand-grey);
}



/* Visually hidden */
a.visually-hidden:not(.skip-link):focus-visible, a.visually-hidden:not(.skip-link):focus {
  position: static !important;
  display: block;
  overflow: visible;
  clip: auto;
  height: auto;
  width: auto;
  margin: var(--spacing-1) 0;
  text-decoration: underline;
}

/* Focus visible */
a:focus-visible, button:focus-visible {
  outline: 2px solid !important;
  -webkit-transition: unset !important;
  transition: unset !important;
}


/* Focus visible form */
input:focus-visible, textarea:focus-visible, select:focus-visible, .select2-container--focus span.select2-selection__rendered {
  outline: 2px solid !important;
  -webkit-transition: unset !important;
  transition: unset !important;
}



/* ------------------------------ */
/* ----------- Layout ----------- */
/* ------------------------------ */

.width--huge {
  max-width: calc(2100px + var(--spacing-6) * 2);
}

.section {
  position: relative;
}

.section:not(.section--light) {
  padding-top: var(--spacing-14);
}

.section--header.section--animation + .section:not(.section--light) {
  z-index: 2;
  padding-top: var(--spacing-10);
}

body:not(.home) .section--header.section--animation {
  padding-bottom: calc(var(--spacing-14) - var(--spacing-10));
}

.section--light:not(:first-child) {
  margin-top: var(--spacing-13);
  padding-top: var(--spacing-12) !important;
  padding-bottom: var(--spacing-12);
}

.section--light:not(:first-child).section--small-gap {
  margin-top: var(--spacing-11);
}

.section--light.section--no-gap {
  margin-top: 0;
}

.section.section--contact {
  padding-top: 0;
}

.section.section--small-gap {
  padding-top: var(--spacing-11);
}

.section:not(.section--light).section--no-gap {
  padding-top: var(--spacing-4);
}

.section > div:not(.width--full):not(.section__projects), .inside {
  margin-right: auto;
  margin-left: auto;  
  padding-right: var(--spacing-6);
  padding-left: var(--spacing-6);
}

.section > div {
  padding-top: var(--spacing-13);
}

.section > .section__downloads {
  padding-top: var(--spacing-6);
}

.section:not(.section--light) > div[class*="--light"] {
  margin-top: var(--spacing-13);
  padding-top: var(--spacing-11) !important;
  padding-bottom: var(--spacing-11);
}

.section:not(.section--light) > div[class*="--light"]:first-child {
  margin-top: 0;
}

.section:not(.section--contact) > div:first-child {
  padding-top: 0;
}

.section:not(.section--contact):not(.section--light):last-child > div:last-child:not(.width--full),
.section:not(.section--contact):not(.section--light):last-child > .section__clients.width--full:last-child,
.section:not(.section--contact):not(.section--light):last-child > .section__partners.width--full:last-child {
  padding-bottom: var(--spacing-14);
}

.section:not(.section--contact):not(.section--light):last-child > .section__text_banner.width--full:last-child {
  margin-bottom: var(--spacing-12);
}

.section__row > .row > div > div:last-child {
  padding-bottom: 0;
}

/* Center */
.section > div[class*="--center"] {
  text-align: center;
}

.section > div[class*="--center"] h1, .section > div[class*="--center"] h2, .section > div[class*="--center"] h3, .section > div[class*="--center"] h4, .section > div[class*="--center"] p, .section > div[class*="--center"] ul {
  margin-right: auto;
  margin-left: auto;
}

.section > div[class*="--center"] ul {
  white-space: pre-line;
  line-height: 0;
}

.section > div[class*="--center"] ul li {
  display: inline-block; 
  line-height: var(--line-height-1);
}



/* ------------------------------ */
/* ------------ Media ----------- */
/* ------------------------------ */

/* Images */
.picture_container {
  position: relative;
  display: block;
  overflow: hidden;
  line-height: 0;
}

.picture_container--cover img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.picture_container--cover, .picture_container--cover picture {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

@media (max-width: 413.98px) {

  .picture_container:not(.picture_container--cover) img {
    width: 100%;
  }

}


/* LazyLoad */
img[data-lazy-src] {
  opacity: 0;
}

img.lazyloaded {
  -webkit-transition: opacity .5s linear;
  transition: opacity .5s linear;
  opacity: 1;
}


/* Position */
.picture_container--left img {
  -o-object-position: left center;
     object-position: left center;
}

.picture_container--right img {
  -o-object-position: right center;
     object-position: right center;
}


/* Overlay */
.picture_container--overlay::before {
  content: "";
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
  height: 25%;
  width: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(66, 66, 65, 0)), to(rgba(66, 66, 65, 0.8)));
  background: linear-gradient(180deg, rgba(66, 66, 65, 0) 0%, rgba(66, 66, 65, 0.8) 100%);
}


/* Videos */
.video_container {
  position: relative;
  display: block;
  overflow: hidden;
  line-height: 0;
}

.video_container--embed {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 9;
}

.video_container--embed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.video_container--cover iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.video_container--cover video {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}


/* Video thumbs */
.video_container--cover {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

/* Lazy Load */
.video_container.is-ready + .picture_container--thumb {
  opacity: 0;
}


/* iFrames */
.iframe_container {
  position: relative;
  overflow: hidden;
}

.iframe_container iframe {
  max-width: 100%;
}



/* ------------------------------ */
/* ---------- Animations -------- */
/* ------------------------------ */

.intro-animation, .intro-animation-mobile {
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
} 


.intro-animation.intro-animation--visible, 
.intro-animation-mobile.intro-animation--visible,
.intro-animation-container.intro-animation--visible .intro-animation {
  opacity: 1;
  -webkit-transition: transform 1s cubic-bezier(0,.55,.45,1), opacity 1s;
  -webkit-transition: opacity 1s, -webkit-transform 1s cubic-bezier(0,.55,.45,1);
  transition: opacity 1s, -webkit-transform 1s cubic-bezier(0,.55,.45,1);
  transition: transform 1s cubic-bezier(0,.55,.45,1), opacity 1s;
  transition: transform 1s cubic-bezier(0,.55,.45,1), opacity 1s, -webkit-transform 1s cubic-bezier(0,.55,.45,1);
  -webkit-transform: translateZ(0) !important;
  transform: translateZ(0) !important;
  will-change: opacity,transform;
}

@media all and (min-width: 992px) {

  .intro-animation--bottom {
      -webkit-transform: translate3d(0, var(--spacing-5), 0);
      transform: translate3d(0, var(--spacing-5), 0);
  }
  
  .intro-animation--top {
      -webkit-transform: translate3d(0, calc(-1 * var(--spacing-5)), 0);
      transform: translate3d(0, calc(-1 * var(--spacing-5)), 0);
  }
    
  .intro-animation--left {
      -webkit-transform: translate3d(calc(-1 * var(--spacing-5)), 0, 0);
      transform: translate3d(calc(-1 * var(--spacing-5)), 0, 0);
  }
    
  .intro-animation--right {
      -webkit-transform: translate3d(var(--spacing-5), 0, 0);
      transform: translate3d(var(--spacing-5), 0, 0);
  }

  /* Delays */
  .intro-animation.intro-animation--delay-2, .intro-animation-container .intro-animation:nth-of-type(2) {-webkit-transition-delay: calc(var(--transition-delay) * 1);transition-delay: calc(var(--transition-delay) * 1);}
  .intro-animation.intro-animation--delay-3, .intro-animation-container .intro-animation:nth-of-type(3) {-webkit-transition-delay: calc(var(--transition-delay) * 2);transition-delay: calc(var(--transition-delay) * 2);}
  .intro-animation.intro-animation--delay-4, .intro-animation-container .intro-animation:nth-of-type(4) {-webkit-transition-delay: calc(var(--transition-delay) * 3);transition-delay: calc(var(--transition-delay) * 3);}
  .intro-animation.intro-animation--delay-5, .intro-animation-container .intro-animation:nth-of-type(5) {-webkit-transition-delay: calc(var(--transition-delay) * 4);transition-delay: calc(var(--transition-delay) * 4);}
  .intro-animation.intro-animation--delay-6, .intro-animation-container .intro-animation:nth-of-type(6) {-webkit-transition-delay: calc(var(--transition-delay) * 5);transition-delay: calc(var(--transition-delay) * 5);}
  .intro-animation.intro-animation--delay-7, .intro-animation-container .intro-animation:nth-of-type(7) {-webkit-transition-delay: calc(var(--transition-delay) * 6);transition-delay: calc(var(--transition-delay) * 6);}
  .intro-animation.intro-animation--delay-8, .intro-animation-container .intro-animation:nth-of-type(8) {-webkit-transition-delay: calc(var(--transition-delay) * 7);transition-delay: calc(var(--transition-delay) * 7);}
  .intro-animation.intro-animation--delay-9, .intro-animation-container .intro-animation:nth-of-type(9) {-webkit-transition-delay: calc(var(--transition-delay) * 8);transition-delay: calc(var(--transition-delay) * 8);}
  .intro-animation.intro-animation--delay-10, .intro-animation-container .intro-animation:nth-of-type(10) {-webkit-transition-delay: calc(var(--transition-delay) * 9);transition-delay: calc(var(--transition-delay) * 9);}
  .intro-animation.intro-animation--delay-11, .intro-animation-container .intro-animation:nth-of-type(11) {-webkit-transition-delay: calc(var(--transition-delay) * 10);transition-delay: calc(var(--transition-delay) * 10);}
  .intro-animation.intro-animation--delay-12, .intro-animation-container .intro-animation:nth-of-type(12) {-webkit-transition-delay: calc(var(--transition-delay) * 11);transition-delay: calc(var(--transition-delay) * 11);}
  .intro-animation.intro-animation--delay-13, .intro-animation-container .intro-animation:nth-of-type(13) {-webkit-transition-delay: calc(var(--transition-delay) * 12);transition-delay: calc(var(--transition-delay) * 12);}
  .intro-animation.intro-animation--delay-14, .intro-animation-container .intro-animation:nth-of-type(14) {-webkit-transition-delay: calc(var(--transition-delay) * 13);transition-delay: calc(var(--transition-delay) * 13);}
  .intro-animation.intro-animation--delay-15, .intro-animation-container .intro-animation:nth-of-type(15) {-webkit-transition-delay: calc(var(--transition-delay) * 14);transition-delay: calc(var(--transition-delay) * 14);}
  .intro-animation.intro-animation--delay-16, .intro-animation-container .intro-animation:nth-of-type(16) {-webkit-transition-delay: calc(var(--transition-delay) * 15);transition-delay: calc(var(--transition-delay) * 15);}
  .intro-animation.intro-animation--delay-17, .intro-animation-container .intro-animation:nth-of-type(17) {-webkit-transition-delay: calc(var(--transition-delay) * 16);transition-delay: calc(var(--transition-delay) * 16);}
  .intro-animation.intro-animation--delay-18, .intro-animation-container .intro-animation:nth-of-type(18) {-webkit-transition-delay: calc(var(--transition-delay) * 17);transition-delay: calc(var(--transition-delay) * 17);}
  .intro-animation.intro-animation--delay-19, .intro-animation-container .intro-animation:nth-of-type(19) {-webkit-transition-delay: calc(var(--transition-delay) * 18);transition-delay: calc(var(--transition-delay) * 18);}
  .intro-animation.intro-animation--delay-20, .intro-animation-container .intro-animation:nth-of-type(20) {-webkit-transition-delay: calc(var(--transition-delay) * 19);transition-delay: calc(var(--transition-delay) * 19);}

}


@media all and (max-width: 991.98px) {

  .intro-animation-mobile {
      opacity: 0;
  }

  .intro-animation-mobile, .intro-animation--bottom, .intro-animation--top, .intro-animation--left, .intro-animation--right {
      -webkit-transform: translate3d(0, var(--spacing-5), 0);
      transform: translate3d(0, var(--spacing-5), 0);
  }

}



/* ------------------------------ */
/* ------------ Icon ------------ */
/* ------------------------------ */

.icon--cursor {
  width: 178px;
  height: 285px;
}

.section__cta--text .icon--cursor {
  width: 170px;
  height: 272px;
}

.icon--cursor-big {
  width: 222px;
  height: 356px;
}


/* ------------------------------ */
/* ----------- Toggle ----------- */
/* ------------------------------ */

.toggle {
  position: absolute;
  z-index: 3;
  background: var(--brand-yellow);
  border: 1px solid var(--brand-black);

  -webkit-transition: -webkit-transform .5s;

  transition: -webkit-transform .5s;

  transition: transform .5s;

  transition: transform .5s, -webkit-transform .5s;

  display: none;
}

.touchevents .toggle {
  display: block;
}

.is-active .toggle {
  -webkit-transform: translateY(200%);
      -ms-transform: translateY(200%);
          transform: translateY(200%);
}

.toggle .toggle__icon {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.toggle .toggle__icon::before, .toggle .toggle__icon::after {
  content: "";
  position: absolute;
  background-color: var(--brand-black);
}

.toggle .toggle__icon::before {
  height: 2px;
  width: 100%;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

.toggle .toggle__icon::after {
  width: 2px;
  height: 100%;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
}



/* ------------------------------ */
/* ------------ Logo ------------ */
/* ------------------------------ */

.site_logo {
  line-height: 0;
}

.site_logo a {
  display: inline-block;
}

.site_logo svg.logo--black {
  fill: var(--brand-black);
}

.site_logo svg.logo--white {
  fill: var(--brand-white);
}



/* ------------------------------ */
/* -------- Text & Titel -------- */
/* ------------------------------ */

.section__title h1, .section__title h2 {
  max-width: 100%;
}

.section__title--line .title_container {
  position: relative;
  overflow: hidden;
}

.section__title--line h1 {
  margin-bottom: var(--spacing-8);
}

.section__title--line .title_line {
  position: absolute;
  bottom: 0;
  height: 1px;
  width: 100%;
  max-width: unset;
  background-color: var(--brand-black);
}


.section__text .text h1:first-child, .section__text .text h2:first-child, .section__text .text h3:first-child, .section__text .text h4:first-child {
  margin-top: 0 !important;
} 


/* ------------------------------ */
/* --------- Teaser-Text -------- */
/* ------------------------------ */

.teaser_text p {
  max-width: 100%;
}


/* ------------------------------ */
/* ----------- Teaser ----------- */
/* ------------------------------ */

/* General */
.teaser__text {
  max-width: 550px;
}

.teaser__content p:last-of-type {
  margin-bottom: 0;
}

main .teaser__content p + ul {
  margin-top: 0;
}

.section__teaser .teaser__content h2.typography--h3 {
  margin-bottom: var(--spacing-5);
}

.section__teaser .button:not(.button--ghost):not(.button--big):not(.button--small) a {
  margin-top: var(--spacing-6);
}


/* Overlapping */
.section__teaser--overlapping .teaser {
  position: relative;
}

.section__teaser--overlapping .teaser__media {
  aspect-ratio: 880 / 610;
}

.section__teaser--overlapping .teaser--right .teaser__media {
  right: 0;
}

.section__teaser--overlapping .teaser--left .teaser__media {
  left: 0;
}

.section__teaser--overlapping .teaser__content {
  position: relative;
  z-index: 2;
  background-color: var(--brand-white);
}


/* Normal */
.section__teaser--normal .button a {
  margin-top: calc(var(--spacing-7) - var(--spacing-4));
}



/* ------------------------------ */
/* ------ 2-spaltiger Text ------ */
/* ------------------------------ */

.section__two_column_content .content__text .picture_container {
  margin-top: var(--spacing-6);
}



/* ------------------------------ */
/* ----------- Banner ----------- */
/* ------------------------------ */

.section > .section__text_banner {
  padding-top: var(--spacing-10-5);
  border-bottom: 1px solid var(--brand-black);
}

.section > .section__projects + .section__text_banner {
  padding-top: 0;
}

.section > .section__text_banner .button a {
  margin-top: 0 !important;
}


/* Über uns */
.section > .section__banner--about:first-child {
  margin-top: 0;
}

.section__banner--about .banner__title {
  position: relative;
}

.section__banner--about .banner__title > img {
  position: absolute;
}

.section__banner--about .banner__title > div {
  position: relative;
  z-index: 2;

  -webkit-transition-delay: calc(var(--transition-delay) * 1) !important;
  transition-delay: calc(var(--transition-delay) * 1) !important;
}

.section__banner--about .banner__title img {
  -webkit-transition-delay: calc(var(--transition-delay) * 2) !important;
  transition-delay: calc(var(--transition-delay) * 2) !important;
}

.section__banner--about .banner__title span {
  display: inline-block;
  font-variation-settings: "wdth" 0, "wght" 400;
}

.section__banner--about .banner__title span:last-child {
  margin-top: 7px;
}

.section__banner--about .banner__title span.cursor {
  position: relative;
  margin-left: var(--spacing-3);
  margin-right: var(--spacing-4);
}

.section__banner--about .icon--cursor {
  position: absolute;
  width: 150px;
  height: 240px;
}

.section__banner--about .banner__content h3 {
  margin-top: 0 !important;
}

.section__banner--about .banner__content .content__text p {
  margin-bottom: 0;
}

    



/* ------------------------------ */
/* ----------- Bilder ----------- */
/* ------------------------------ */

.section > div:not(.section__two_column_content) + .section__media {
  padding-top: var(--spacing-12);
}

.section__image .image, .section__media .media {
  position: relative;
}

.section > .section__media + .section__media {
  padding-top: var(--spacing-11);
}

.section__media--one .media {
  aspect-ratio: 1560 / 878;
}

.section__media--two .media--big, .section__media--three .media--small {
  aspect-ratio: 780 / 540;
}

.section__media--two .media--small, .section__media--three .media--big {
  aspect-ratio: 560 / 760;
}

.section__media--three .media--medium {
  aspect-ratio: 560 / 700;
}



/* ------------------------------ */
/* ---------- Accordion --------- */
/* ------------------------------ */

.section > .section__title + .section__accordion, .section > .section__text + .section__accordion {
  padding-top: var(--spacing-10) !important;
}

.section__accordion > h2 {
  margin-top: 0;
  margin-bottom: var(--spacing-7) !important;
}

.accordions {
  padding-bottom: calc(var(--spacing-5) + var(--spacing-1));
  margin-bottom: calc(-1 * var(--spacing-5));
}

.accordion {
  position: relative;
  border-bottom: 1px solid var(--brand-black);
}

.accordion:first-child {
  border-top: 1px solid var(--brand-black);
}

.accordion__header {
  position: relative;
  cursor: pointer;
}

.accordion__header h2, .accordion__header h3 {
  margin: 0 !important;
  -webkit-transition: opacity var(--transition-2);
  transition: opacity var(--transition-2);
}

.no-touchevents .accordion:not(.accordion--awaiting):not(.accordion--active) .accordion__header .accordion_trigger:hover h2 {
  opacity: var(--opacity-1);
}

.accordion_trigger {
  position: relative;
}

.accordion_trigger .accordion_toggle {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

.accordion_trigger .accordion_toggle::before, .accordion_trigger .accordion_toggle::after {
  content: "";
  position: absolute;
  
  background-color: var(--brand-black);
}

.accordion_trigger .accordion_toggle::before {
  width: 100%;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

.accordion_trigger .accordion_toggle::after {
  height: 100%;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  -webkit-transition: -webkit-transform var(--transition-2);
  transition: -webkit-transform var(--transition-2);
  transition: transform var(--transition-2);
  transition: transform var(--transition-2), -webkit-transform var(--transition-2);
}

.accordion--awaiting .accordion_trigger .accordion_toggle::after, .accordion--active .accordion_trigger .accordion_toggle::after {
  -webkit-transform: translateX(-50%) rotate(90deg);
      -ms-transform: translateX(-50%) rotate(90deg);
          transform: translateX(-50%) rotate(90deg);
}

.accordion__content {
  display: none;
  overflow: hidden;
}

.accordion__inside {
  padding-top: var(--spacing-4);
  padding-bottom: var(--spacing-8);
}

.accordion__inside p, .accordion__inside ul {
  max-width: 800px;
}

.accordion__inside .gallery {
  margin-top: var(--spacing-9);
  margin-bottom: var(--spacing-4);
}

.accordion__inside .button:not(.button--ghost):not(.button--big):not(.button--small) a {
  margin-top: calc(var(--spacing-7) - var(--spacing-5));
}

.accordion__inside .colors {
  margin: calc(-1 * var(--spacing-3)) -6px;
}

.accordion__inside .colors > div {
  padding: var(--spacing-3) 6px;
}

.accordion__inside .colors .color__container + p {
  font-size: var(--font-size-2-5);
  line-height: var(--line-height-1);
  margin-top: var(--spacing-2);
}



/* ------------------------------ */
/* ------------ Werte ----------- */
/* ------------------------------ */

.list__item {
  position: relative;
  border-bottom: 1px solid var(--brand-black);
}

.list__item:first-child {
  border-top: 1px solid var(--brand-black);
}

.list__item p {
  max-width: 100%;
}



/* ------------------------------ */
/* ----------- Kacheln ---------- */
/* ------------------------------ */

.tile--yellow ::-moz-selection {
  color: var(--brand-yellow);
  background: var(--brand-black);
}

.tile--yellow ::selection {
  color: var(--brand-yellow);
  background: var(--brand-black);
}

.tile--yellow ::-moz-selection {
  color: var(--brand-yellow);
  background: var(--brand-black);
}

.tile--blue ::-moz-selection {
  color: var(--brand-blue);
  background: var(--brand-white);
}

.tile--blue ::selection {
  color: var(--brand-blue);
  background: var(--brand-white);
}

.tile--blue ::-moz-selection {
  color: var(--brand-blue);
  background: var(--brand-white);
}

.tile--black ::-moz-selection {
  color: var(--brand-black);
  background: var(--brand-white);
}

.tile--black ::selection {
  color: var(--brand-black);
  background: var(--brand-white);
}

.tile--black ::-moz-selection {
  color: var(--brand-black);
  background: var(--brand-white);
}

.tiles .tile {
  position: relative;
}

.touchevents .tiles .tile {
  cursor: pointer;
}

.tile__container {
  position: relative;
  overflow: hidden;
}

.tile .typography--lead {
  line-height: 1.14;
}

.tile .tile__content .typography--lead {
  margin-bottom: 0;
}

.tile .button:not(.button--ghost):not(.button--big):not(.button--small) a {
  margin-top: var(--spacing-6);
}

.tile__hover {
  overflow: auto;
}

.tile__hover::-webkit-scrollbar {
  width: 6px;
}

.tile--yellow .tile__container, .tile--yellow .tile__hover {
  background-color: var(--brand-yellow);
}

.tile--yellow .tile__hover::-webkit-scrollbar-track {
  background: var(--brand-yellow);
}

.tile--yellow .tile__hover::-webkit-scrollbar-thumb {
  background: var(--brand-black);
}

.tile--blue .tile__container, .tile--blue .tile__hover {
  color: var(--brand-white);
  background-color: var(--brand-blue);
}

.tile--blue .tile__hover::-webkit-scrollbar-track {
  background: var(--brand-blue);
}

.tile--blue .tile__hover::-webkit-scrollbar-thumb {
  background: var(--brand-yellow);
}

.tile--black .tile__container, .tile--black .tile__hover {
  color: var(--brand-white);
  background-color: var(--brand-black);
}

.tile--black .tile__hover::-webkit-scrollbar-track {
  background: var(--brand-black);
}

.tile--black .tile__hover::-webkit-scrollbar-thumb {
  background: var(--brand-yellow);
}

.tile--grey .tile__container, .tile--grey .tile__hover {
  background-color: var(--brand-grey);
}

.tile--grey .tile__hover::-webkit-scrollbar-track {
  background: var(--brand-grey);
}

.tile--grey .tile__hover::-webkit-scrollbar-thumb {
  background: var(--brand-black);
}

.tile__content, .tile__hover {
  height: 100%;
}

.tile__hover p.typography--lead {
  margin-bottom: var(--spacing-4);
}

    
/* Content */
.tiles:not(.tiles--team) .tile__hover::before {
  content: "";
  position: absolute;
  top: 0;
  height: 1px;
  width: 100%;

  -webkit-transition-delay: unset;

          transition-delay: unset;
}

.no-touchevents .tiles:not(.tiles--team) .tile:hover .tile__hover::before,
.touchevents .tiles:not(.tiles--team) .tile.is-active .tile__hover::before {
  top: -1px;
  -webkit-transition-delay: .5s;
          transition-delay: .5s;
}

.tiles:not(.tiles--team) .tile--yellow .tile__hover::before, .tiles:not(.tiles--team) .tile--grey .tile__hover::before {
  background-color: var(--brand-black);
}

.tiles:not(.tiles--team) .tile--blue .tile__hover::before, .tiles:not(.tiles--team) .tile--black .tile__hover::before {
  background-color: var(--brand-white);
}

.tile__content {
  position: relative;
  z-index: 1;
}

.tiles:not(.tiles--team) .tile__content img, .tiles--team .tile--image img {
  max-width: 80%;
}


/* Hover */
.tile__hover {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;

  -webkit-transform: translateY(100%);

      -ms-transform: translateY(100%);

          transform: translateY(100%);
  -webkit-transition: -webkit-transform .5s;
  transition: -webkit-transform .5s;
  transition: transform .5s;
  transition: transform .5s, -webkit-transform .5s;
}

.no-touchevents .tiles:not(.tiles--team) .tile:hover .tile__hover,
.touchevents .tiles:not(.tiles--team) .tile.is-active .tile__hover {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}


/* Plus */
.tile__plus {
  position: absolute;
}

.tile__plus::before, .tile__plus::after {
  content: "";
  position: absolute;
  background-color: var(--brand-black);
}

.tile__plus::before {
  width: 100%;
  height: 2px;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

.tile__plus::after {
  width: 2px;
  height: 100%;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
}

.tile--blue .tile__plus::before, .tile--blue .tile__plus::after, 
.tile--black .tile__plus::before, .tile--black .tile__plus::after {
  background-color: var(--brand-white);
}


/* Team */
.tiles--team .tile__hover, .tiles--team .tile__hover a {
  color: var(--brand-white);
}

.tiles--team .tile__hover {
  background-color: rgba(0,0,0,.65);

  -webkit-transform: translateY(100%);

      -ms-transform: translateY(100%);

          transform: translateY(100%);
  -webkit-transition: -webkit-transform .5s;
  transition: -webkit-transform .5s;
  transition: transform .5s;
  transition: transform .5s, -webkit-transform .5s;
}

.no-touchevents .tiles--team .tile:hover .tile__hover,
.touchevents .tiles--team .tile.is-active .tile__hover {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}

.tiles--team h3 {
  font-variation-settings: "wdth" 0, "wght" 400;
  line-height: var(--line-height-3);
}

.tiles--team p {
  margin-bottom: calc(var(--spacing-1) * 0.6);
}

.tiles--team p:last-child {
  margin-bottom: 0;
}

.tiles--team p a {
  display: inline-block;
  -webkit-transition: opacity var(--transition-2);
  transition: opacity var(--transition-2);
}



/* ------------------------------ */
/* ----------- Swiper ----------- */
/* ------------------------------ */

.swiper {
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
          transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
          transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  -ms-touch-action: pan-y;
      touch-action: pan-y;
}

.swiper-vertical {
  -ms-touch-action: pan-x;
      touch-action: pan-x;
}

.swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}



/* ------------------------------ */
/* -------- Kundenstimme -------- */
/* ------------------------------ */

.quotes__title h2 {
  margin-top: 0;
}

.quotes__slider {
  position: relative;
}

.quotes__slider .swiper.swiper--quotes {
  margin: 0;
}

.swiper--quotes .swiper-slide {
  width: 100%;
}

.quote__container {
  position: relative;
}

.quote__container p:not(.author) {
  line-height: var(--line-height-1);
}

.quote__container p.author {
  position: absolute;
  bottom: 0;
  left: 0;
}

.quotes__slider svg {
  position: absolute;
  right: 0;
  width: 52px;
  height: 40px;
  fill: var(--brand-black);
}


/* ------------------------------ */
/* ----------- Kunden ----------- */
/* ------------------------------ */

.section__clients {
  border-bottom: 1px solid var(--brand-black);
}

.swiper--clients {
  pointer-events: none !important;
}

.swiper--clients::before, .swiper--clients::after {
  content: "";
  position: absolute;
  top: 0;
  z-index: 2;
  display: block;
  height: 100%;
}

.swiper--clients::before {
  left: 0;
  background: -webkit-gradient(linear, left top, right top, from(rgba(255,255,255,1)), color-stop(49%, rgba(255,255,255,.85)), to(rgba(255,255,255,0)));
  background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,.85) 49%, rgba(255,255,255,0) 100%);
}

.swiper--clients::after {
  right: 0;
  background: -webkit-gradient(linear, right top, left top, from(rgba(255,255,255,1)), to(rgba(255,255,255,0)));
  background: linear-gradient(270deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
}

.swiper--clients::before, .swiper--clients::after {
  width: 30px;
}

.swiper--clients .swiper-slide {
  width: auto;
}

.swiper--clients .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
          transition-timing-function: linear !important;
}



/* ------------------------------ */
/* ----------- Partner ---------- */
/* ------------------------------ */

.section__partners {
  border-bottom: 1px solid var(--brand-black);
}

.section__partners h2 {
  margin-top: 0;
  margin-bottom: var(--spacing-9);
}



/* ------------------------------ */
/* ----------- Banner ----------- */
/* ------------------------------ */

/* General */
.section__cta .cta_container {
  position: relative;
  background-color: var(--brand-blue);
}

.section__cta .cta_container ::-moz-selection {
  color: var(--brand-blue);
  background: var(--brand-white);
}

.section__cta .cta_container ::selection {
  color: var(--brand-blue);
  background: var(--brand-white);
}

.section__cta .cta_container ::-moz-selection {
  color: var(--brand-blue);
  background: var(--brand-white);
}


.section__cta .cta__cursor {
  position: absolute;
  z-index: 2;
}

.section__cta span {
  display: block;
  max-width: 100%;
}


/* Text */
.section__cta .cta > .cta__content {
  position: relative;
  z-index: 2;
  -webkit-transition-delay: calc(var(--transition-delay) * 1) !important;
  transition-delay: calc(var(--transition-delay) * 1) !important;
}

.section__cta .cta > .cta__cursor {
  -webkit-transition-delay: calc(var(--transition-delay) * 2) !important;
  transition-delay: calc(var(--transition-delay) * 2) !important;
}

.section__cta--text .cta__content span {
  font-variation-settings: "wdth" 0, "wght" 400;
  color: var(--brand-white);
}

.section__cta--text .cta img {
  position: absolute;
  z-index: 1;
}


/* Ansprechperson */
.section__cta--person .cta_container {
  padding-top: var(--spacing-10);
}

.section__cta--person span.typography--h2-big, .section__cta--person .cta__bottom__left > span, .section__cta--person .cta__bottom__left a {
  color: var(--brand-white);

} 

.section__cta--person span.typography--h2-big, .section__cta--person .cta__bottom__left > span {
  font-variation-settings: "wdth" 0, "wght" 400;
}

.section__cta--person .cta__top span:nth-child(2) {
  padding-left: 13%;
}

.section__cta--person .cta__bottom__left {
  padding-right: var(--spacing-8);
}

.section__cta--person .cta__bottom__right .button a {
  margin-top: 0;
}

.section__cta--person .cta__bottom__left a {
  -webkit-transition: opacity var(--transition-2);
  transition: opacity var(--transition-2);
}

.no-touchevents .section__cta--person .cta__bottom__left a:hover {
  opacity: var(--opacity-1);
}


/* Kontakt & Karriere */
.section--contact > .section__contact--contact {
  padding-top: var(--spacing-12);
}

.section__contact--contact .contact {
  padding-bottom: var(--spacing-12);
}

.section__contact--career .contact > div {
  position: relative;
  z-index: 3;
}

.section__contact h2 {
  margin-top: 0;
  margin-bottom: var(--spacing-5);
}

.section__contact .contact_phone {
  margin-top: var(--spacing-1);
}

.section__contact p.typography--h3 {
  line-height: var(--line-height-1);
}

.section__contact p.typography--h3 a {
  display: inline-block;
  padding-left: 0;
}

.section__contact p.typography--h3 a span {
  position: relative;
  z-index: 2;
}

.section__contact p.typography--h3 a::after {
  content: "";
  position: absolute;
  width: 0;
  background-color: var(--brand-yellow);
  -webkit-transition: width .35s;
  transition: width .35s;
}

.no-touchevents .section__contact p.typography--h3 a:hover {
  opacity: 1 !important;
}

.section__contact p.typography--h3 a span {
  position: relative;
  display: inline-block;
}

.section__contact p.typography--h3 a span::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 2px;
  width: 100%;
  background-color: var(--brand-black);
}

.section__contact--career .contact > img {
  position: absolute;
  z-index: 2;

  -webkit-transition-delay: calc(var(--transition-delay) * 3) !important;
  transition-delay: calc(var(--transition-delay) * 3) !important;
}



/* ------------------------------ */
/* -------- Unser Angebot ------- */
/* ------------------------------ */

.section__offers, .section__offers .offers, .section__offers .offer a:not(.full), .section__offers .offer a span {
  position: relative;
}

.section__offers .offers {
  z-index: 2;
}


/* V1 */
.offers--v1 .offer + .offer {
  margin-top: var(--spacing-1);
}

.offers--v1 .offer a > span::after {
  content: "";
  position: absolute;
  z-index: 1;
  width: 0;
  background-color: var(--brand-yellow);
  -webkit-transition: width .35s;
  transition: width .35s;
}

.offers--v1 .offer .offer__title {
  position: relative;
  z-index: 2;
  font-variation-settings: "wdth" 0, "wght" 400;
}

.offers--v1 + .offers_clipart {
  position: absolute;
  z-index: 1;
  opacity: 0;
  -webkit-transition: opacity var(--transition-1);
  transition: opacity var(--transition-1);
}

.offers--v1 + .offers_clipart.is-active {
  opacity: 1;
}

.header + main .section:first-child > .section__offers:first-child .offers--v1 + .offers_clipart {
  top: -91px;
}


/* V2 */
.no-touchevents .offers--v2 .offer:hover ::-moz-selection {
  color: var(--brand-yellow);
  background: var(--brand-black);
}
.no-touchevents .offers--v2 .offer:hover ::selection {
  color: var(--brand-yellow);
  background: var(--brand-black);
}

.no-touchevents .offers--v2 .offer:hover ::-moz-selection {
  color: var(--brand-yellow);
  background: var(--brand-black);
}

.offers--v2 .offer {
  position: relative;
  padding-bottom: var(--spacing-10);
}

.offers--v2 .offer__container {
  position: relative;
  z-index: 2;
}

.offers--v2 .offer::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;

  background-color: var(--brand-grey);
  -webkit-box-shadow: 0 0 0 var(--brand-black);
          box-shadow: 0 0 0 var(--brand-black);

  -webkit-transition: var(--transition-1);

  transition: var(--transition-1);
}

.no-touchevents .offers--v2 .offer:hover::after, .touchevents .offers--v2 .offer.is-active::after {
  top: 0;
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
  background-color: var(--brand-yellow);
}

.offers--v2 .offer__desc {
  -webkit-transition: -webkit-transform var(--transition-1);
  transition: -webkit-transform var(--transition-1);
  transition: transform var(--transition-1);
  transition: transform var(--transition-1), -webkit-transform var(--transition-1);
}

.offers--v2 h3.typography--h2-big {
  font-variation-settings: "wdth" 0, "wght" 400;
  margin-bottom: var(--spacing-4);
}

.offers--v2 .offer__desc p {
  margin-bottom: 0;
}

.offers--v2 .offer__media {
  position: absolute;
  aspect-ratio: 1 / 1;
}

.offers--v2 .offer__media img {
  position: absolute;
  -webkit-transition: unset !important;
  transition: unset !important;
}

.offers--v2 .offer__media img:not(.hover) {
  top: 0;
  left: 0;
}

.offers--v2 .offer__media img.hover {
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

.offers--v2 .offer__media img.hover, .no-touchevents .offers--v2 .offer:hover img:not(.hover), .touchevents .offers--v2 .offer.is-active img:not(.hover) {
  opacity: 0;
}

.no-touchevents .offers--v2 .offer:hover img.hover, .touchevents .offers--v2 .offer.is-active img.hover {
  opacity: 1;
}



/* ------------------------------ */
/* ----------- Address ---------- */
/* ------------------------------ */

.section > .section__text--address {
  padding-top: 0;
}

.section > .section__text--address + div {
  padding-top: var(--spacing-6);
}



/* ------------------------------ */
/* ----------- Angebot ---------- */
/* ------------------------------ */

.page-template-page-angebot-sub header + main .section--header:not(.section--clipart):first-child {
  padding-top: var(--spacing-13);
}

.page-template-page-angebot-sub .section--header + .section, 
.page-template-page-angebot-sub .section--header + .section > .section__image + div:not(.section__teaser_text),
.page-template-page-angebot-sub .section--header + .section > div + .section__accordion {
  padding-top: var(--spacing-10-5);
}



/* ------------------------------ */
/* ------- Event / Stellen ------ */
/* ------------------------------ */

.events, .jobs {
  border-bottom: 1px solid var(--brand-black);
}

.event, .job {
  border-top: 1px solid var(--brand-black);
}

.event h3, .job h3 {
  max-width: 100%;
  margin-bottom: 0;
}

.event .button:not(.button--ghost):not(.button--big):not(.button--small) a, .job .button:not(.button--ghost):not(.button--big):not(.button--small) a {
  margin-top: 0;
}



/* ------------------------------ */
/* ---------- Location ---------- */
/* ------------------------------ */

#standort > .section__two_column_content + .section__media {
  padding-top: var(--spacing-10-5);
}

.content--location .location {
  font-size: var(--font-size-2-5);
  line-height: var(--line-height-2);
}

.content--location .location__maps a {
  display: inline-block;
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  -webkit-transition: opacity var(--transition-2);
  transition: opacity var(--transition-2);
}

.no-touchevents .content--location .location__maps a:hover {
  opacity: var(--opacity-1);
}



/* ------------------------------ */
/* ------------ Footer ---------- */
/* ------------------------------ */

/* General */
footer {
  line-height: var(--line-height-2);
}

footer a {
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;

  -webkit-transition: opacity var(--transition-2);
  transition: opacity var(--transition-2);
}

.no-touchevents footer a:hover {
  opacity: var(--opacity-1);
}

footer b, footer strong {
  font-weight: 400;
}

footer .site_logo a {
  border-bottom: 0;
}

.footer__top {
  background-color: var(--brand-black);
}

.footer__top, .footer__top a {
  color: var(--brand-white);
}

.footer__bottom {
  font-size: var(--font-size-1);
  background-color: var(--brand-yellow);
}

.footer__bottom ::-moz-selection {
  color: var(--brand-white);
  background: var(--brand-black);
}

.footer__bottom ::selection {
  color: var(--brand-white);
  background: var(--brand-black);
}

.footer__bottom ::-moz-selection {
  color: var(--brand-white);
  background: var(--brand-black);
}

.footer__bottom, .footer__bottom a {
  color: var(--brand-black);
}

.footer__bottom ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.footer__bottom ul li {
  margin-right: var(--spacing-5);
}

.footer__bottom ul li:last-child{
  margin-right: 0;
}



/* ------------------------------ */
/* ------------- CTA ------------ */
/* ------------------------------ */

.site_cta ::-moz-selection {
  color: var(--brand-yellow);
  background: var(--brand-black);
}

.site_cta ::selection {
  color: var(--brand-yellow);
  background: var(--brand-black);
}

.site_cta ::-moz-selection {
  color: var(--brand-yellow);
  background: var(--brand-black);
}

.site_cta {
  position: fixed;
  z-index: 15;
  bottom: 0;
  left: 0;
  width: 100%;
  background: var(--brand-yellow);

  -webkit-transition: -webkit-transform var(--transition-3);

  transition: -webkit-transform var(--transition-3);

  transition: transform var(--transition-3);

  transition: transform var(--transition-3), -webkit-transform var(--transition-3);
}

.site_cta.show {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}

.site_cta.hide, .site_cta.remove {
  -webkit-transform: translateY(101%);
      -ms-transform: translateY(101%);
          transform: translateY(101%);
}

.site_cta__row {
  position: relative;
}

.site_cta > span {
  display: inline-block;
  line-height: var(--line-height-3);
}

.site_cta .cta__title span.typography--h4 {
  display: block
}

.site_cta .cta__text {
  padding: 0 var(--spacing-5);
}

.site_cta span.typography--h4 {
  font-variation-settings: "wdth" 0, "wght" 500;
}

.site_cta span.typography--special {
  position: relative;
}

.site_cta .button {
  position: relative;
}

.site_cta .button:not(.button--ghost):not(.button--big):not(.button--small) a {
  margin-top: 0;
}

.site_cta__close {
  position: absolute;
  right: 0;

  -webkit-transition: opacity var(--transition-2);

  transition: opacity var(--transition-2);
}

.no-touchevents .site_cta__close:hover {
  opacity: var(--opacity-1);
}

.site_cta__close::before, .site_cta__close::after {
  content: "";
  position: absolute;
  width: 2px;
  background-color: var(--brand-black);
}

.site_cta__close::before {
  -webkit-transform:rotate(45deg);
  -ms-transform:rotate(45deg);
  transform:rotate(45deg);
}

.site_cta__close::after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}



/* ------------------------------ */
/* ------------ Seiten ---------- */
/* ------------------------------ */

/* Default */
.page-template-default .section--header .section__title {
  padding-bottom: 0 !important;
}

.page-template-default .section--header h1 {
  margin-bottom: var(--spacing-9);
}

.page-template-default .section--header + .section:not(.section--light) {
  padding-top: var(--spacing-11);
}


/* Über uns */
.page-template-page-ueber-uns .section--header + .section .section__banner--about:first-child {
  margin-top: calc(-1 * (var(--spacing-14) - var(--spacing-10-5)));
}

/* Kontakt */
.page-template-page-kontakt .intro__text {
  font-size: var(--font-size-3);
  font-weight: 300;
}

.page-template-page-kontakt address {
  margin-bottom: var(--spacing-4);
}

.page-template-page-kontakt .section > .section__form {
  padding-top: var(--spacing-10-5);
}

.page-template-page-kontakt .section--header + .section--light {
  margin-top: 0;
  padding-top: 0 !important;
}

.page-template-page-kontakt .section__form + .section__two_column_content {
  padding-top: var(--spacing-11);
}

/* 404 */
body.error404 .section__text p {
  margin-bottom: 0;
}



/* ------------------------------ */
/* ------- Cookie-Meldung ------- */
/* ------------------------------ */

.cookie_box {
  position: fixed;
  z-index: 15;
  background: var(--brand-white);
  border-top: 1px solid var(--brand-black);

  -webkit-transition: transform 1s cubic-bezier(0,.55,.45,1), margin-bottom var(--transition-3);
  -webkit-transition: margin-bottom var(--transition-3), -webkit-transform 1s cubic-bezier(0,.55,.45,1);
  transition: margin-bottom var(--transition-3), -webkit-transform 1s cubic-bezier(0,.55,.45,1);
  transition: transform 1s cubic-bezier(0,.55,.45,1), margin-bottom var(--transition-3);
  transition: transform 1s cubic-bezier(0,.55,.45,1), margin-bottom var(--transition-3), -webkit-transform 1s cubic-bezier(0,.55,.45,1);
}
    
.cookie_box, .cookie_box.hide {
  -webkit-transform: translateY(200%);
      -ms-transform: translateY(200%);
          transform: translateY(200%);
}
    
.cookie_box.is-active {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}

.cookie_box__content {
  margin-bottom: var(--spacing-3);
}

.cookie_box__content a {
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  -webkit-transition: opacity var(--transition-2);
  transition: opacity var(--transition-2);
}

.no-touchevents .cookie_box__content a:hover {
  opacity: var(--opacity-1);
}




/* ------------------------------ */
/* -------- Media Queries ------- */
/* ------------------------------ */

@media all and (min-height: 1100px) {

  .header + main .section:first-child {
    padding-top: var(--spacing-14);
  }

}


@media all and (max-height: 1099.98px) and (min-width: 768px) {

  .header + main .section:first-child {
    padding-top: var(--spacing-13);
  }

}



@media all and (min-width: 576px) {

  .tiles--team .tile--text .tile__content, .tiles--team .tile__hover {
    padding: var(--spacing-4);
  }

  .tile__toggle {
    bottom: var(--spacing-4);
    right: var(--spacing-4);
  }

  .tiles:not(.tiles--team) .tile__content, .tiles:not(.tiles--team) .tile__hover {
    padding: var(--spacing-9) var(--spacing-5);
  }

  .tiles--team h3 {
    margin-bottom: var(--spacing-2);
  }

  .section__contact--career .contact {
    padding-bottom: var(--spacing-13);
  }

  .accordion__inside .color__container { 
    border-right: 10px solid var(--brand-black);
    border-bottom: 10px solid var(--brand-black);
  }

  .cookie_box__content {
    font-size: var(--font-size-2);
  }

}


@media all and (min-width: 768px) {

  .section__text_banner .text_banner__text {
    max-width: calc(100% - 240px);
  }

  span.line {
    width: 54px;
  }

  span.line::before {
    height: 1.5px;
  }

  .section__cta .cta_pattern--right img {
    right: 0
  }

  .section__cta .cta_pattern:not(.cta_pattern--right) img {
    left: 0;
  }

  .section__cta .cta_pattern--left {
    text-align: left;
  }

  .section__cta .cta_pattern--right {
    text-align: right;
  }

  .quotes__slider svg {
    top: 0;
  }

  .section__cta--text .cta_container {
    padding-top: var(--spacing-11);
    padding-bottom: var(--spacing-11);
  }

  .section__contact p.typography--h3 a span::after {
    height: 3px;
  }

  .event h3, .job h3 {
    padding-right: calc(160px + var(--spacing-6));
  }

  .event .button:not(.button--ghost):not(.button--big):not(.button--small), .job .button:not(.button--ghost):not(.button--big):not(.button--small) {
    position: absolute;
    top: calc(50% - 5px);
    right: var(--spacing-6);
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }

  .offers--v1 .offer {
    display: inline-block;
  }

  .section__offers .offers--v1 .offer a, .section__offers .offers--v1 .offer a > span {
    display: inline-block;
    max-width: 100%;
  }

  .content--location .location__maps {
    margin-top: var(--spacing-8);
    margin-bottom: var(--spacing-6);
  }

  .footer__nav {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }

  .footer__creators {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }

  .cookie_box {
    right: var(--spacing-6);
    bottom: var(--spacing-6);
    border-left: 1px solid var(--brand-black);
  }

}


@media all and (min-width: 992px) {

  .section > .section__text + .section__events, .section > .section__teaser_text + .section__events, .section > .section__two_column_content + .section__events,
  .section > .section__text + .section__jobs, .section > .section__teaser_text + .section__jobs, .section > .section__two_column_content + .section__jobs,
  .section > .section__text + .section__list, .section > .section__teaser_text + .section__list, .section > .section__two_column_content + .section__list {
    padding-top: var(--spacing-10-5);
  }

  .single-projekt .header + main .section:first-child, .single-event .header + main .section:first-child, .single-stelle .header + main .section:first-child {
    padding-top: var(--spacing-13);
  }

  .section__teaser--normal .teaser__media {
    aspect-ratio: 550 / 715;
  }

  .section__teaser--overlapping .teaser {
    padding-top: var(--spacing-10);
  }

  .section__teaser--overlapping .teaser__media {
    position: absolute;
    top: 0;
  }

  .section__image .image {
    aspect-ratio: 1320 / 540;
  }

  .section__media--two .media_container.reverse .media--big {
    -webkit-transition-delay: calc(var(--transition-delay) * 1) !important;
    transition-delay: calc(var(--transition-delay) * 1) !important;
  }

  .section__media--three .media_container.reverse .media--big {
    -webkit-transition-delay: calc(var(--transition-delay) * 2) !important;
    transition-delay: calc(var(--transition-delay) * 2) !important;
  }

  .section__media--two .media_container.reverse .media--small, .section__media--three .media_container.reverse .media--medium {
    -webkit-transition-delay: unset !important;
    transition-delay: unset !important;
  }

  .section__clients, .section__partners {
    padding-bottom: var(--spacing-10);
  }

  .section > .section__clients {
    padding-top: var(--spacing-10-5);
  }

  .quotes__slider, .quote__container {
    min-height: 260px;
  }

  .quotes__slider .swiper_container {
    max-width: 550px;
  }

  .quotes__slider {
    position: relative;
    padding-left: var(--spacing-7);
    padding-right: var(--spacing-10);
  }

  .quotes__slider::before {
    content: "";
    position: absolute;
    top: 4px;
    left: 0;
    width: 1px;
    height: calc(100% - 7px);
    background-color: var(--brand-black);
  }

  .quote__container p:not(.author) {
    font-size: var(--font-size-2-5);
  }

  .section > .section__quotes + .section__partners {
    padding-top: var(--spacing-9);
  }

  .section__cta--text .cta__content span:nth-child(1), .section__cta--text .cta__content span:nth-child(4) {
    padding-left: 12%;
  }

  .section__cta--text .cta__content span:nth-child(2) {
    padding-left: 27%;
  }

  .section__cta--person .cta_container {
    padding-bottom: var(--spacing-7);
  }

  .section__cta--person .cta__bottom {
    margin-top: var(--spacing-12);
  }

  .section__cta--person .cta__portrait {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    aspect-ratio: 840 / 1060;
  }

  .offers--v2 .offer {
    padding-top: var(--spacing-10);
  }
  
  .offers--v2 .offer__desc .button--ghost a {
    margin-top: var(--spacing-5);
  }

  .section__banner--about .banner__content .content__title {
    width: 45%;
    padding-right: var(--spacing-9);
  }

  .section__banner--about .banner__content .content__text {
    width: 55%;
  }

  .section__two_column_content.width--medium .content--location .content__title {
    -ms-flex-preferred-size: 40%;
    flex-basis: 40%;
    max-width: 40%;
  }

  .section__two_column_content.width--medium .content--location .content__text {
    -ms-flex-preferred-size: 60%;
    flex-basis: 60%;
    max-width: 60%;
  }

  .section > .section__two_column_content + .section__media {
    padding-top: var(--spacing-11);
  }

  .cookie_box {
    border-right: 10px solid var(--brand-black);
    border-bottom: 10px solid var(--brand-black);
  }

}


@media all and (min-width: 1240px) {

  :root {
    --font-size-2: 20px;
    --font-size-1: 18px;

    --spacing-1: 10px;

    --height-header: 100px;
  }

  .typography--toptitle-big span.line {
    top: -4px;
  }

  .toggle {
    width: 52px;
    height: 52px;
  }

  .toggle__icon {
    width: 26px;
    height: 26px;
  }

  .section__two_column_content .content__title, .quotes__title {
    padding-right: var(--spacing-10);
  }

  .section__two_column_content.width--medium h1 {
    margin-bottom: 0;
  }

  .tiles .tile {
    width: 33.33333333%;
  }

  .accordion_trigger .accordion_toggle::before {
    height: 3px;
  }

  .accordion_trigger .accordion_toggle::after {
    width: 3px;
  }

  .list__item--6 p {
    padding-left: 6%;
  }

  .list__item--15 p {
    padding-left: 15%;
  }

  .list__item--30 p {
    padding-left: 30%;
  }

  .list__item--45 p {
    padding-left: 45%;
  }

  .tile__plus {
    top: var(--spacing-3);
    right: var(--spacing-3);
    width: 26px;
    height: 26px;
  }

  .quote__container {
    padding-bottom: 100px;
  }

  .section__cta--person .cta__bottom__right {
    padding-bottom: 6px;
  }

  .partners {
    margin: calc(-1 * var(--spacing-5));
  }

  .partner {
    padding: var(--spacing-5);
  }

  .section__cta--text .cta__content span:nth-child(3) {
    padding-left: 6%;
  }

  .site_cta__close {
    width: 60px;
    height: 60px;
  }

  .site_cta__close::before, .site_cta__close::after {
    top: 10px;
    left: 29px;
    height: 40px;
  }

  .footer__certification {
    position: absolute;
  }

  .footer__bottom {
    padding: 30px 0 25px;
  }

  .cookie_box {
    max-width: 514px;
    padding: 22px 25px 25px;
  }

}


@media all and (min-width: 1400px) {

  :root {
    --font-size-2-5: 26px;
    --font-size-standard: 23px;
  }

  main ul li {
    padding-left: 68px;
  }

  main ul li::before {
    top: 11.5px;
    width: 45px;
  }

  .section__teaser--normal .teaser__media {
    width: 550px;
  }

  .section__teaser--normal .teaser__content {
    width: calc(100% - 550px);
  }

  .section__teaser--normal .teaser:not(.reverse) .teaser__content {
    padding-left: var(--spacing-10);
  }

  .section__teaser--normal .teaser.reverse .teaser__content {
    padding-right: var(--spacing-10);
  }

  .section > .section__quotes + .section__clients {
    padding-top: var(--spacing-9);
  }

  .gallery__image, .gallery .grid-sizer {
    width: calc(50% - 20px);
  }

  .gallery {
    margin-right: -10px;
    margin-left: -10px;
  }

  .gallery .gallery__image:not(.grid-sizer) {
    margin: 10px;
  }

  .gallery .gallery__image.grid-sizer {
    margin-right: 10px;
    margin-left: 10px;
  }

  .footer__top {
    padding: 100px 0;
  }

  .footer__top .footer__container > div {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%;
  }

  .footer__certification {
    bottom: -40px;
  }

  footer .site_logo svg {
    width: 217px;
    height: 45px;
  }

  .site_cta__row {
    padding-right: 70px;
  }

  .site_cta__close {
    right: -15px;
  }

}


@media all and (min-width: 1600px) and (min-height: 1100px) { 

  :root {
    --font-size-10: 154px;
  }

}


@media all and (min-width: 1600px) and (max-height: 1099.98px) { 

  :root {
    --font-size-10: 145px;
  }

}


@media all and (min-width: 1600px) {

  :root {
    --font-size-9: 126px;
    --font-size-8: 108px;
    --font-size-7: 90px;
    --font-size-6: 72px;
    --font-size-5: 54px;
    --font-size-4: 45px;
    --font-size-3: 36px;

    --spacing-14: 280px;
    --spacing-13: 240px;
    --spacing-12: 200px;
    --spacing-11: 150px;
    --spacing-10-5: 120px;
    --spacing-10: 100px;
    --spacing-9: 80px;
    --spacing-8: 70px;
    --spacing-7: 60px;
    --spacing-6: 50px;
    --spacing-5: 40px;
    --spacing-4: 30px;
    --spacing-3: 20px;
    --spacing-2: 16px;
  }

  .width--tiny {
    max-width: calc(1020px + var(--spacing-6) * 2);
  }

  .width--small {
    max-width: calc(1140px + var(--spacing-6) * 2);
  }

  .width--medium {
    max-width: calc(1320px + var(--spacing-6) * 2);
  }

  .width--big {
    max-width: calc(1560px + var(--spacing-6) * 2);
  }

  .width--large {
    max-width: calc(1710px + var(--spacing-6) * 2);
  }

  .pattern, .pattern img {
    height: 89px;
  }x

  .section__two_column_content.width--medium .content:not(.content--location) .content__title {
    -ms-flex-preferred-size: 57%;
    flex-basis: 57%;
    max-width: 57%;
  }

  .section__two_column_content.width--medium .content:not(.content--location) .content__text {
    -ms-flex-preferred-size: 43%;
    flex-basis: 43%;
    max-width: 43%;
  }

  .section__teaser--overlapping .teaser {
    min-height: 610px;
  }

  .section__teaser--overlapping .teaser__media {
    width: 880px;
  }

  .section__teaser--overlapping .teaser__content {
    max-width: 780px;
    min-height: calc(610px - var(--spacing-10));
    padding: var(--spacing-9);
  }
  
  .section__teaser--overlapping .teaser--left .teaser__content {
    margin-left: calc(100% - 780px);
  }

  .section__media--two .media_container:not(.reverse) .media--big {
    margin-right: 80px;
  }

  .section__media--two .media_container.reverse .media--big {
    margin-left: 80px;
  }

  .section__media--two .media--big {
    width: 780px;
  }

  .section__media--two .media--small {
    width: 280px;
  }

  .section__media--three .media--big {
    width: 462px;
  }

  .section__media--three .media--small {
    width: 390px;
    margin-right: 54px;
    margin-left: 54px;
  }

  .section__media--three .media--medium {
    width: 360px;
  }

  .tiles {
    margin: -15px;
  }

  .tiles .tile {
    padding: 15px;
  }

  .tile__content {
    min-height: 530px;
  }

  .accordion_trigger {
    padding: 34px var(--spacing-11) 24px;
  }

  .accordion_trigger .accordion_toggle {
    width: 32px;
    height: 32px;
  }

  .accordion__inside .picture {
    margin-top: var(--spacing-6);
  }

  .accordion__inside .gallery {
    max-width: 1020px;
  }

  .list__item {
    padding-top: 26px;
    padding-bottom: 14px;
  }

  .quotes__title, .quotes__slider {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
  }

  .section__cta--text .cta img {
    max-width: 198px;
    top: -82px;
    left: 30px;
  }

  .section__cta--text .cta__cursor {
    right: 123px;
  }

  .section__cta--person .cta__cursor {
    top: var(--spacing-8);
    left: -31%;
  }

  .section__cta--person .cta__top {
    max-width: 820px;
  }

  .section__cta--person .cta__bottom {
    max-width: 960px;
  }

  .section__contact p.typography--h3 a::after {
    top: 17px;
    left: -9px;
    height: 22px;
  }

  .no-touchevents .section__contact p.typography--h3 a:hover::after {
    width: calc(100% + 18px);
  }

  .section > .section__contact--career {
    margin-top: 100px;
  }

  .section__contact--career .contact > img {
    max-width: 336px;
    bottom: 57px;
    right: calc(var(--spacing-12) * 1.5);
  }

  .offers--v1 .offer a > span::after {
    top: 21px;
    left: -17px;
    height: 46px;
  }

  .no-touchevents .offers--v1 .offer.is-active a > span::after {
    width: calc(100% + 34px);
  }

  .offers--v1 + .offers_clipart {
    top: 136px;
    right: 212px;
  }

  .offers--v2 .offer {
    min-height: 600px;
  }

  .offers--v2 .offer + .offer {
    margin-top: 30px;
  }

  .offers--v2 .offer::after {
    top: -30px;
    right: 30px;
    -webkit-transform: translate(30px, 30px);
        -ms-transform: translate(30px, 30px);
            transform: translate(30px, 30px);
  }

  .no-touchevents .offers--v2 .offer:hover::after, .touchevents .offers--v2 .offer.is-active::after {
    right: 30px;
    width: calc(100% - 30px);
    -webkit-box-shadow: 30px 30px 0 var(--brand-black);
            box-shadow: 30px 30px 0 var(--brand-black);
  }

  .no-touchevents .offers--v2 .offer:hover .offer__desc, .touchevents .offers--v2 .offer.is-active .offer__desc {
    -webkit-transform: translateX(-30px);
        -ms-transform: translateX(-30px);
            transform: translateX(-30px);
  }
  
  .offers--v2 .offer__media img:not(.hover) {
    max-width: 612px;
  }

  .offers--v2 .offer__media img.hover {
    max-width: 405px;
    bottom: 40px;
  }

  .offers--v2 .offer__desc {
    max-width: 770px;
  }

  .offers--v2 .offer__media {
    right: 0;
  }

  .section__text_banner .text_banner {
    padding-top: 49px;
    padding-bottom: 43px;
  }

  .partners--big {
    max-width: 1230px;
  }

  .partners--medium {
    max-width: 820px;
  }

  .partners--large .partner, .partners--huge .partner {
    max-width: 25%;
  }

  .event, .job {
    padding-top: 42px;
    padding-bottom: 30px;
  }
  
  .section__banner--about .banner__title {
    margin-bottom: 82px;
  }

  .section__banner--about .banner__title > img.banner_media-1 {
    max-width: 220px;
    top: 76px;
    left: 153px;
  }

  .section__banner--about .banner__title > img.banner_media-2 {
    max-width: 340px;
    top: 58px;
    left: 940px;
  }

  .section__banner--about .banner__title span.cursor {
    width: 150px;
    height: 116px;
  }

  .section__banner--about .icon--cursor {
    top: -85px;
  }

  .section__banner--about .banner__content {
    margin-top: var(--spacing-13);
    padding-left: calc(var(--spacing-12) * 2);
  }

  .site_cta {
    padding-top: 15px;
    padding-bottom: 9px;
  }

  .site_cta span.typography--special {
    top: -2px;
  }

  .site_cta .button {
    top: -3px;
  }

  .site_cta__close {
    top: -7px;
  }

}


@media all and (min-width: 1720px) {

  .section__cta--text .cta__cursor {
    bottom: -90px;
  }

  .section__banner--about .banner__title span:last-child {
    padding-left: 27%;
  }

}


@media all and (min-width: 1900px) {

  .offers--v2 .offer__media {
    top: -240px;
    width: 612px;
  }

}


@media all and (max-width: 1899.98px) and (min-width: 1720px) {

  .offers--v2 .offer__media {
    top: -228px;
    width: 578px;
  }

}


@media all and (max-width: 1719.98px) and (min-width: 1600px) {

  .offers--v2 .offer__media {
    top: -214px;
    width: 544px;
  }

  .section__cta--text .cta__cursor {
    bottom: -90px;
  }

  .section__banner--about .banner__title span:last-child {
    padding-left: 28%;
  }

}


@media all and (max-width: 1599.98px) {

  .pattern img {
    width: auto;
  }

  .text_banner__button {
    position: relative;
  }

  .section__banner--about .icon--cursor {
    -webkit-transform-origin: left;
        -ms-transform-origin: left;
            transform-origin: left;
  }

  .accordion__inside .picture {
    -webkit-transform-origin: left center;
        -ms-transform-origin: left center;
            transform-origin: left center;
  }

}


@media all and (max-width: 1599.98px) and (min-width: 576px) {

  .quotes__slider svg {
    -webkit-transform-origin: top right;
        -ms-transform-origin: top right;
            transform-origin: top right;
  }

}


@media all and (max-width: 1599.98px) and (min-width: 992px) {

  .section__cta span.typography--h4 {
    font-size: calc(var(--font-size-3) - 3px);
  }

}


@media all and (max-width: 1599.98px) and (min-width: 1400px) {

  :root {
    --font-size-10: 126px;
    --font-size-9: 119px;
    --font-size-8: 102px;
    --font-size-7: 85px;
    --font-size-6: 68px;
    --font-size-5: 51px;
    --font-size-4: 42px;
    --font-size-3: 34px;

    --spacing-14: 250px;
    --spacing-13: 220px;
    --spacing-12: 180px;
    --spacing-11: 140px;
    --spacing-10-5: 114px;
    --spacing-10: 96px;
    --spacing-9: 76px;
    --spacing-8: 66px;
    --spacing-7: 56px;
    --spacing-6: 46px;
    --spacing-5: 38px;
    --spacing-4: 28px;
    --spacing-3: 18px;
    --spacing-2: 14px;
  }

  .width--tiny {
    max-width: calc(918px + var(--spacing-6) * 2);
  }

  .width--small {
    max-width: calc(1026px + var(--spacing-6) * 2);
  }

  .width--medium {
    max-width: calc(1188px + var(--spacing-6) * 2);
  }

  .width--big {
    max-width: calc(1404px + var(--spacing-6) * 2);
  }

  .width--large {
    max-width: calc(1539px + var(--spacing-6) * 2);
  }

  .icon--cursor, .quotes__slider svg, .accordion__inside .picture {
    -webkit-transform: scale(.95);
        -ms-transform: scale(.95);
            transform: scale(.95);
  }

  .accordion__inside .picture {
    margin-top: var(--spacing-5);
  }

  .icon--cursor-big {
    -webkit-transform: scale(.9);
        -ms-transform: scale(.9);
            transform: scale(.9);
  }

  .pattern, .pattern img {
    height: 80px;
  }

  .section__two_column_content.width--medium .content:not(.content--location) .content__title {
    -ms-flex-preferred-size: 54%;
    flex-basis: 54%;
    max-width: 54%;
  }

  .section__two_column_content.width--medium .content:not(.content--location) .content__text {
    -ms-flex-preferred-size: 46%;
    flex-basis: 46%;
    max-width: 46%;
  }

  .section__teaser--overlapping .teaser {
    min-height: 550px;
  }

  .section__teaser--overlapping .teaser__media {
    width: 792px;
  }

  .section__teaser--overlapping .teaser__content {
    max-width: 51%;
    min-height: calc(550px - var(--spacing-10));
  }

  .section__teaser--overlapping .teaser--left .teaser__content {
    margin-left: 49%;
  }

  .section__teaser--overlapping .teaser--right .teaser__content {
    padding: var(--spacing-9) var(--spacing-8) var(--spacing-9) 50px;
  }

  .section__teaser--overlapping .teaser--left .teaser__content {
    padding: var(--spacing-9) 50px var(--spacing-9) var(--spacing-8);
  }

  .section__media--two .media_container:not(.reverse) .media--big {
    margin-right: 72px;
  }

  .section__media--two .media_container.reverse .media--big {
    margin-left: 72px;
  }

  .section__media--two .media--big {
    width: 702px;
  }

  .section__media--two .media--small {
    width: 252px;
  }

  .section__media--three .media--big {
    width: 416px;
  }

  .section__media--three .media--small {
    width: 351px;
    margin-right: 48px;
    margin-left: 48px;
  }

  .section__media--three .media--medium {
    width: 324px;
  }

  .accordion_trigger {
    padding: 32px var(--spacing-11) 24px;
  }

  .accordion_trigger .accordion_toggle {
    width: 30px;
    height: 30px;
  }

  .accordion__inside .gallery {
    max-width: 918px;
  }

  .tiles {
    margin: -12px;
  }

  .tiles .tile {
    padding: 12px;
  }

  .tile__content {
    min-height: 480px;
  }

  .list__item {
    padding-top: 24px;
    padding-bottom: 14px;
  }

  .quotes__title {
    -ms-flex-preferred-size: 46%;
    flex-basis: 46%;
    max-width: 46%;
  }

  .quotes__slider {
    -ms-flex-preferred-size: 54%;
    flex-basis: 54%;
    max-width: 54%;
  }

  .section__cta--text .cta img {
    max-width: 178px;
    top: -64px;
    left: 26px;
  }

  .section__cta--text .cta__cursor {
    bottom: -94px;
    right: 55px;
  }

  .section__cta--person .cta__top {
    max-width: 660px;
  }

  .section__cta--person .cta__bottom {
    max-width: 820px;
  }

  .section__cta--person .cta__cursor {
    top: var(--spacing-8);
    left: -32%;
  }

  .section__contact p.typography--h3 a::after {
    top: 16px;
    left: -9px;
    height: 22px;
  }

  .no-touchevents .section__contact p.typography--h3 a:hover::after {
    width: calc(100% + 18px);
  }

  .section > .section__contact--career {
    margin-top: 100px;
  }

  .section__contact--career .contact > img {
    max-width: 302px;
    bottom: 36px;
    right: calc(var(--spacing-12) * 1.5);
  }

  .offers--v1 .offer a > span::after {
    top: 19px;
    left: -15px;
    height: 44px;
  }

  .no-touchevents .offers--v1 .offer.is-active a > span::after {
    width: calc(100% + 30px);
  }

  .offers--v1 + .offers_clipart {
    top: 132px;
    right: 30px;
  }

  .offers--v1 + .offers_clipart img {
    max-width: 612px;
  }

  .offers--v2 .offer {
    min-height: 570px;
  }

  .offers--v2 .offer + .offer {
    margin-top: 28px;
  }

  .offers--v2 .offer::after {
    top: -28px;
    right: 28px;
    -webkit-transform: translate(28px, 28px);
        -ms-transform: translate(28px, 28px);
            transform: translate(28px, 28px);
  }

  .no-touchevents .offers--v2 .offer:hover::after, .touchevents .offers--v2 .offer.is-active::after {
    right: 28px;
    width: calc(100% - 28px);
    -webkit-box-shadow: 28px 28px 0 var(--brand-black);
            box-shadow: 28px 28px 0 var(--brand-black);
  }

  .no-touchevents .offers--v2 .offer:hover .offer__desc, .touchevents .offers--v2 .offer.is-active .offer__desc {
    -webkit-transform: translateX(-28px);
        -ms-transform: translateX(-28px);
            transform: translateX(-28px);
  }

  .offers--v2 .offer__media {
    top: -214px;
    right: calc(-1 * (var(--spacing-6) / 2));
    width: 544px;
  }

  .offers--v2 .offer__media img:not(.hover) {
    max-width: 551px;
  }

  .offers--v2 .offer__media img.hover {
    max-width: 365px;
    bottom: 40px;
  }

  .offers--v2 .offer__desc {
    max-width: 680px;
  }

  .section__text_banner .text_banner {
    padding-top: 46px;
    padding-bottom: 37px;
  }

  .text_banner__button {
    top: -2px;
  }

  .partners--big {
    max-width: 1110px;
  }

  .partners--medium {
    max-width: 740px;
  }

  .partners--large .partner, .partners--huge .partner {
    max-width: 25%;
  }

  .partners:not(.partners--large):not(.partners--huge) .partner__logo img {
    max-width: 294px;
  }

  .event, .job {
    padding-top: 40px;
    padding-bottom: 26px;
  }

  .section__banner--about .banner__title span:last-child {
    padding-left: 390px;
  }

  .section__banner--about .banner__title {
    margin-bottom: 100px;
  }
  
  .section__banner--about .banner__title > img.banner_media-1 {
    max-width: 220px;
    top: 72px;
    left: 144px;
  }

  .section__banner--about .banner__title > img.banner_media-2 {
    max-width: 340px;
    top: 58px;
    left: 880px;
  }

  .section__banner--about .banner__title span.cursor {
    width: 143px;
    height: 111px;
  }

  .section__banner--about .icon--cursor {
    top: -84px;
  }

  .section__banner--about .banner__content {
    margin-top: var(--spacing-13);
    padding-left: calc(var(--spacing-12) * 1.5);
  }

  .site_cta {
    padding-top: 15px;
    padding-bottom: 7px;
  }

  .site_cta span.typography--special {
    top: -3px;
  }

  .site_cta .button {
    top: -3px;
  }

  .site_cta__close {
    top: -8px;
  }

}


@media all and (max-width: 1399.98px) and (min-width: 992px) {
  
  .section__two_column_content h1 br {
    display: none;
  }

  .section > .section__quotes + .section__clients {
    padding-top: var(--spacing-9);
  }

}


@media all and (max-width: 1399.98px) and (min-width: 1240px) {

  :root {
    --font-size-10: 116px;
    --font-size-9: 110px;
    --font-size-8: 94px;
    --font-size-7: 78px;
    --font-size-6: 65px;
    --font-size-5: 48px;
    --font-size-4: 40px;
    --font-size-3: 32px;
    --font-size-2-5: 24px;
    --font-size-standard: 22px;

    --spacing-14: 220px;
    --spacing-13: 190px;
    --spacing-12: 160px;
    --spacing-11: 130px;
    --spacing-10-5: 106px;
    --spacing-10: 88px;
    --spacing-9: 70px;
    --spacing-8: 60px;
    --spacing-7: 50px;
    --spacing-6: 40px;
    --spacing-5: 34px;
    --spacing-4: 24px;
    --spacing-3: 18px;
    --spacing-2: 14px;
  }

  main ul li {
    padding-left: 66px;
  }

  main ul li::before {
    top: 10.5px;
    width: 43px;
  }

  .width--tiny {
    max-width: calc(816px + var(--spacing-6) * 2);
  }

  .width--small {
    max-width: calc(912px + var(--spacing-6) * 2);
  }

  .width--medium {
    max-width: calc(1068px + var(--spacing-6) * 2);
  }

  .width--big, .section__tiles.width--medium {
    max-width: calc(1248px + var(--spacing-6) * 2);
  }

  .width--large {
    max-width: calc(1368px + var(--spacing-6) * 2);
  }

  .icon--cursor, .quotes__slider svg, .accordion__inside .picture {
    -webkit-transform: scale(.85);
        -ms-transform: scale(.85);
            transform: scale(.85);
  }

  .icon--cursor-big {
    -webkit-transform: scale(.8);
        -ms-transform: scale(.8);
            transform: scale(.8);
  }

  .accordion__inside .picture {
    margin-top: var(--spacing-4);
  }

  .pattern, .pattern img {
    height: 72px;
  }

  .section__two_column_content.width--medium .content:not(.content--location) .content__title,
  .section__two_column_content.width--medium .content:not(.content--location) .content__text {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
  }

  .section__teaser--normal .teaser__media {
    width: 495px;
  }

  .section__teaser--normal .teaser__content {
    width: calc(100% - 495px);
  }

  .section__teaser--normal .teaser:not(.reverse) .teaser__content {
    padding-left: var(--spacing-9);
  }

  .section__teaser--normal .teaser.reverse .teaser__content {
    padding-right: var(--spacing-9);
  }

  .section__teaser--overlapping .teaser {
    min-height: 490px;
  }

  .section__teaser--overlapping .teaser__media {
    width: 704px;
  }

  .section__teaser--overlapping .teaser__content {
    max-width: 50%;
    min-height: calc(490px - var(--spacing-10));
  }

  .section__teaser--overlapping .teaser--left .teaser__content {
    margin-left: 50%;
  }

  .section__teaser--overlapping .teaser--right .teaser__content {
    padding: var(--spacing-8) var(--spacing-8) var(--spacing-8) 0;
  }

  .section__teaser--overlapping .teaser--left .teaser__content {
    padding: var(--spacing-8) 0 var(--spacing-8) var(--spacing-8);
  }

  .section__media--two .media_container:not(.reverse) .media--big {
    margin-right: 64px;
  }

  .section__media--two .media_container.reverse .media--big {
    margin-left: 64px;
  }

  .section__media--two .media--big {
    width: 624px;
  }

  .section__media--two .media--small {
    width: 224px;
  }

  .section__media--three .media--big {
    width: 370px;
  }

  .section__media--three .media--small {
    width: 312px;
    margin-right: 43px;
    margin-left: 43px;
  }

  .section__media--three .media--medium {
    width: 288px;
  }

  .accordion_trigger {
    padding: 30px var(--spacing-11) 22px;
  }

  .accordion_trigger .accordion_toggle {
    width: 28px;
    height: 28px;
  }

  .accordion__inside .gallery {
    max-width: 918px;
  }

  .gallery__image, .gallery .grid-sizer {
    width: calc(50% - 14px);
  }

  .gallery {
    margin-right: -7px;
    margin-left: -7px;
  }

  .gallery .gallery__image:not(.grid-sizer) {
    margin: 7px;
  }

  .gallery .gallery__image.grid-sizer {
    margin-right: 7px;
    margin-left: 7px;
  }

  .tiles {
    margin: -10px;
  }

  .tiles .tile {
    padding: 10px;
  }

  .tile__content {
    min-height: 465px;
  }

  .list__item {
    padding-top: 24px;
    padding-bottom: 11px;
  }

  .quotes__title {
    -ms-flex-preferred-size: 44%;
    flex-basis: 44%;
    max-width: 44%;
  }

  .quotes__slider {
    -ms-flex-preferred-size: 56%;
    flex-basis: 56%;
    max-width: 56%;
  }

  .section__cta--text .cta img {
    max-width: 168px;
    top: -65px;
    left: 20px;
  }

  .section__cta--text .cta__cursor {
    bottom: -95px;
    right: 22px;
  }

  .section__cta--person .cta__top {
    max-width: 600px;
  }

  .section__cta--person .cta__bottom {
    max-width: 700px;
  }

  .section__cta--person .cta__cursor {
    top: var(--spacing-5);
    left: -34%;
  }

  .section__contact p.typography--h3 a::after {
    top: 15px;
    left: -8px;
    height: 20px;
  }

  .no-touchevents .section__contact p.typography--h3 a:hover::after {
    width: calc(100% + 16px);
  }

  .section > .section__contact--career {
    margin-top: 78px;
  }

  .section__contact--career .contact > img {
    max-width: 286px;
    bottom: 36px;
    right: var(--spacing-11);
  }

  .offers--v1 .offer a > span::after {
    top: 18px;
    left: -14px;
    height: 40px;
  }

  .no-touchevents .offers--v1 .offer.is-active a > span::after {
    width: calc(100% + 28px);
  }

  .offers--v1 + .offers_clipart {
    top: 94px;
    right: 0;
  }

  .offers--v1 + .offers_clipart img {
    max-width: 612px;
  }

  .offers--v2 .offer {
    min-height: 540px;
  }

  .offers--v2 .offer + .offer {
    margin-top: 24px;
  }

  .offers--v2 .offer::after {
    top: -24px;
    right: 24px;
    -webkit-transform: translate(24px, 24px);
        -ms-transform: translate(24px, 24px);
            transform: translate(24px, 24px);
  }

  .no-touchevents .offers--v2 .offer:hover::after, .touchevents .offers--v2 .offer.is-active::after {
    right: 24px;
    width: calc(100% - 24px);
    -webkit-box-shadow: 24px 24px 0 var(--brand-black);
            box-shadow: 24px 24px 0 var(--brand-black);
  }

  .no-touchevents .offers--v2 .offer:hover .offer__desc, .touchevents .offers--v2 .offer.is-active .offer__desc {
    -webkit-transform: translateX(-24px);
        -ms-transform: translateX(-24px);
            transform: translateX(-24px);
  }

  .offers--v2 .offer__media {
    top: -195px;
    right: calc(-1 * (var(--spacing-6) / 2));
    width: 490px;
  }

  .offers--v2 .offer__media img:not(.hover) {
    max-width: 490px;
  }

  .offers--v2 .offer__media img.hover {
    max-width: 324px;
    bottom: 40px;
  }

  .offers--v2 .offer__desc {
    max-width: 580px;
  }

  .section__text_banner .text_banner {
    padding-top: 40px;
    padding-bottom: 33px;
  }

  .text_banner__button {
    top: -1px;
  }

  .partners--big {
    max-width: 987px;
  }

  .partners--medium {
    max-width: 658px;
  }

  .partners--large .partner, .partners--huge .partner {
    max-width: 25%;
  }

  .partners:not(.partners--large):not(.partners--huge) .partner__logo img {
    max-width: 261px;
  }

  .event, .job {
    padding-top: 39px;
    padding-bottom: 26px;
  }

  .section__banner--about .banner__title span {
    font-size: calc(var(--font-size-10) - 8px);
  }

  .section__banner--about .banner__title span:last-child {
    padding-left: 345px;
  }

  .section__banner--about .banner__title {
    margin-bottom: 82px;
  }
  
  .section__banner--about .banner__title > img.banner_media-1 {
    max-width: 198px;
    top: 72px;
    left: 115px;
  }

  .section__banner--about .banner__title > img.banner_media-2 {
    max-width: 306px;
    top: 48px;
    left: 760px;
  }

  .section__banner--about .banner__title span.cursor {
    width: 128px;
    height: 105px;
  }

  .section__banner--about .icon--cursor {
    top: -83px;
  }

  .section__banner--about .banner__content {
    margin-top: var(--spacing-13);
    padding-left: calc(var(--spacing-12) * 1.25);
  }

  .section__two_column_content .content__text .picture_container, .footer__certification {
    -webkit-transform: scale(.95);
        -ms-transform: scale(.95);
            transform: scale(.95);
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
  }

  .footer__top {
    padding: 80px 0;
  }

  .footer__certification {
    bottom: -30px;
  }

  .footer__logo {
    -ms-flex-preferred-size: 24%;
    flex-basis: 24%;
    max-width: 24%;
  }

  .footer__address {
    -ms-flex-preferred-size: 22%;
    flex-basis: 22%;
    max-width: 22%;
  }

  .footer__contact, .footer__opening_hours {
    -ms-flex-preferred-size: 27%;
    flex-basis: 27%;
    max-width: 27%;
  }

  footer .site_logo svg {
    width: 207px;
    height: 43px;
  }

  .site_cta {
    padding-top: 15px;
    padding-bottom: 10px;
  }

  .site_cta__row {
    padding-right: 70px;
  }

  .site_cta span.typography--special {
    top: -3px;
  }

  .site_cta .button {
    top: -2px;
  }

  .site_cta__close {
    top: 1px;
    right: -15px;
  }

}


@media all and (max-width: 1239.98px) {

  .list__item--6 p {
    padding-left: 0%;
  }

  .section__cta--text .cta_container {
    overflow: hidden;
  }

  .accordion_trigger .accordion_toggle::before {
    height: 2px;
  }

  .accordion_trigger .accordion_toggle::after {
    width: 2px;
  }

  .tile__plus {
    top: var(--spacing-4);
    right: var(--spacing-4);
    width: 24px;
    height: 24px;
  }

  .footer__top {
    padding: var(--spacing-10) 0;
  }

  .footer__inside.width--big {
    max-width: 100%;
  }

  .footer__logo {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
    margin-bottom: var(--spacing-8);
  }

}


@media all and (max-width: 1239.98px) and (min-width: 576px) {

  .tiles .tile {
    width: 50%;
  }

}


@media all and (max-width: 1239.98px) and (min-width: 768px) {

  .quote__container {
    padding-bottom: var(--spacing-10);
  }

  .tile .tile__content .typography--lead {
    font-size: var(--font-size-5);
  }

  .gallery__image, .gallery .grid-sizer {
    width: calc(50% - 10px);
  }

  .gallery {
    margin-right: -5px;
    margin-left: -5px;
  }

  .gallery .gallery__image:not(.grid-sizer) {
    margin: 5px;
  }

  .gallery .gallery__image.grid-sizer {
    margin-right: 5px;
    margin-left: 5px;
  }

}


@media all and (max-width: 1239.98px) and (min-width: 992px) {

  :root {
    --font-size-10: 105px;
    --font-size-9: 100px;
    --font-size-8: 84px;
    --font-size-7: 70px;
    --font-size-6: 56px;
    --font-size-5: 43px;
    --font-size-4: 36px;
    --font-size-3: 30px;
    --font-size-2-5: 23px;
    --font-size-standard: 21px;
    --font-size-2: 19px;
    --font-size-1: 17px;

    --spacing-14: 210px;
    --spacing-13: 180px;
    --spacing-12: 150px;
    --spacing-11: 120px;
    --spacing-10-5: 98px;
    --spacing-10: 80px;
    --spacing-9: 67px;
    --spacing-8: 56px;
    --spacing-7: 46px;
    --spacing-6: 36px;
    --spacing-5: 30px;
    --spacing-4: 22px;
    --spacing-3: 16px;
    --spacing-2: 12px;
    --spacing-1: 8px;

    --height-header: 96px;
  }

  .width--tiny {
    max-width: calc(663px + var(--spacing-6) * 2);
  }

  .width--small {
    max-width: calc(741px + var(--spacing-6) * 2);
  }

  .width--medium {
    max-width: calc(858px + var(--spacing-6) * 2);
  }

  .width--big {
    max-width: calc(1014px + var(--spacing-6) * 2);
  }

  main ul li {
    padding-left: 64px;
  }

  main ul li::before {
    top: 10.5px;
    width: 41px;
  }

  .typography--toptitle-big span.line {
    top: -3px;
  }

  .icon--cursor, .quotes__slider svg, .accordion__inside .picture {
    -webkit-transform: scale(.75);
        -ms-transform: scale(.75);
            transform: scale(.75);
  }

  .icon--cursor-big {
    -webkit-transform: scale(.65);
        -ms-transform: scale(.65);
            transform: scale(.65);
  }

  .accordion__inside .picture {
    margin-top: var(--spacing-3);
  }

  .pattern, .pattern img {
    height: 58px;
  }

  .toggle {
    width: 50px;
    height: 50px;
  }

  .toggle__icon {
    width: 25px;
    height: 25px;
  }

  .section__two_column_content .content__title, .quotes__title {
    padding-right: var(--spacing-9);
  }

  .section__teaser--normal .teaser__media {
    width: 385px;
  }

  .section__teaser--normal .teaser__content {
    width: calc(100% - 385px);
  }

  .section__teaser--normal .teaser:not(.reverse) .teaser__content {
    padding-left: var(--spacing-8);
  }

  .section__teaser--normal .teaser.reverse .teaser__content {
    padding-right: var(--spacing-8);
  }

  .section__teaser--overlapping .teaser {
    min-height: 430px;
  }

  .section__teaser--overlapping .teaser__media {
    width: 616px;
  }

  .section__teaser--overlapping .teaser__content {
    max-width: 50%;
    min-height: calc(430px - var(--spacing-10));
  }

  .section__teaser--overlapping .teaser--left .teaser__content {
    margin-left: 50%;
  }

  .section__teaser--overlapping .teaser--right .teaser__content {
    padding: var(--spacing-7) var(--spacing-7) var(--spacing-7) 0;
  }

  .section__teaser--overlapping .teaser--left .teaser__content {
    padding: var(--spacing-7) 0 var(--spacing-7) var(--spacing-7);
  }

  .section__media--two .media_container:not(.reverse) .media--big {
    margin-right: 52px;
  }

  .section__media--two .media_container.reverse .media--big {
    margin-left: 52px;
  }

  .section__media--two .media--big {
    width: 507px;
  }

  .section__media--two .media--small {
    width: 182px;
  }

  .section__media--three .media--big {
    width: 300px;
  }

  .section__media--three .media--small {
    width: 254px;
    margin-right: 35px;
    margin-left: 35px;
  }

  .section__media--three .media--medium {
    width: 234px;
  }

  .accordion_trigger {
    padding: 26px 0 20px var(--spacing-10-5);
  }

  .accordion_trigger .accordion_toggle {
    width: 26px;
    height: 26px;
  }

  .accordion__inside .gallery {
    max-width: 918px;
  }

  .tiles {
    margin: -10px;
  }

  .tiles .tile {
    padding: 10px;
  }

  .tile__content {
    min-height: 529px;
  }

  .list__item {
    padding-top: 24px;
    padding-bottom: 13px;
  }

  .list__item--15 p {
    padding-left: 8%;
  }

  .list__item--30 p {
    padding-left: 22%;
  }

  .list__item--45 p {
    padding-left: 34%;
  }

  .quotes__title {
    -ms-flex-preferred-size: 42%;
    flex-basis: 42%;
    max-width: 42%;
  }

  .quotes__slider {
    -ms-flex-preferred-size: 58%;
    flex-basis: 58%;
    max-width: 58%;
  }

  .section__cta--text .cta img {
    max-width: 158px;
    top: -70px;
    left: -46px;
  }

  .section__cta--text .cta__cursor {
    bottom: -100px;
    right: -32px;
  }

  .section__cta--person .cta__top {
    max-width: 480px;
  }

  .section__cta--person span.typography--h2-big {
    font-size: var(--font-size-6);
  }

  .section__cta--person .cta__bottom {
    max-width: 535px;
  }

  .section__cta--person .cta__cursor {
    top: 0;
    left: -37%;
  }

  .section__cta--person .cta__bottom__right {
    padding-bottom: 5px;
  }

  .section__contact p.typography--h3 a::after {
    top: 13px;
    left: -7px;
    height: 18px;
  }

  .no-touchevents .section__contact p.typography--h3 a:hover::after {
    width: calc(100% + 14px);
  }

  .section > .section__contact--career {
    margin-top: 58px;
  }

  .section__contact--career .contact > div {
    max-width: 600px;
  }

  .section__contact--career .contact > img {
    max-width: 252px;
    bottom: 36px;
    right: var(--spacing-6);
  }

  .offers--v1 .offer a > span::after {
    top: 16px;
    left: -13px;
    height: 35px;
  }

  .no-touchevents .offers--v1 .offer.is-active a > span::after {
    width: calc(100% + 26px);
  }

  .offers--v1 + .offers_clipart {
    top: 102px;
    right: 0;
  }

  .offers--v1 + .offers_clipart img {
    max-width: 544px;
  }

  .offers--v2 .offer {
    min-height: 500px;
  }

  .offers--v2 .offer + .offer {
    margin-top: 22px;
  }

  .offers--v2 .offer::after {
    top: -22px;
    right: 22px;
    -webkit-transform: translate(22px, 22px);
        -ms-transform: translate(22px, 22px);
            transform: translate(22px, 22px);
  }

  .no-touchevents .offers--v2 .offer:hover::after, .touchevents .offers--v2 .offer.is-active::after {
    right: 22px;
    width: calc(100% - 22px);
    -webkit-box-shadow: 22px 22px 0 var(--brand-black);
            box-shadow: 22px 22px 0 var(--brand-black);
  }

  .no-touchevents .offers--v2 .offer:hover .offer__desc, .touchevents .offers--v2 .offer.is-active .offer__desc {
    -webkit-transform: translateX(-22px);
        -ms-transform: translateX(-22px);
            transform: translateX(-22px);
  }

  .offers--v2 h3.typography--h2-big {
    font-size: var(--font-size-6);
  }

  .offers--v2 .offer__media {
    top: -130px;
    right: -22px;
    width: 408px;
  }

  .offers--v2 .offer__media img:not(.hover) {
    max-width: 408px;
  }

  .offers--v2 .offer__media img.hover {
    max-width: 292px;
    bottom: 40px;
  }

  .offers--v2 .offer__desc {
    max-width: 460px;
  }

  .section__text_banner .text_banner {
    padding-top: 36px;
    padding-bottom: 28px;
  }

  .text_banner__button {
    top: -2px;
  }

  .partners--big {
    max-width: 852px;
  }

  .partners--medium {
    max-width: 568px;
  }

  .partners--large .partner, .partners--huge .partner {
    max-width: 25%;
  }

  .partners {
    margin: calc(-1 * var(--spacing-5));
  }

  .partner {
    padding: var(--spacing-5)
  }

  .partners:not(.partners--large):not(.partners--huge) .partner__logo img {
    max-width: 224px;
  }

  .event, .job {
    padding-top: 37px;
    padding-bottom: 25px;
  }

   .section__banner--about .banner__title span {
    font-size: var(--font-size-9);
  }

  .section__banner--about .banner__title span:last-child {
    padding-left: 288px;
  }

  .section__banner--about .banner__title {
    margin-bottom: 79px;
  }
  
  .section__banner--about .banner__title > img.banner_media-1 {
    max-width: 176px;
    top: 72px;
    left: 98px;
  }

  .section__banner--about .banner__title > img.banner_media-2 {
    max-width: 272px;
    top: 53px;
    left: 590px;
  }

  .section__banner--about .banner__title span.cursor {
    width: 113px;
    height: 100px;
  }

  .section__banner--about .icon--cursor {
    top: -73px;
  }

  .section__banner--about .banner__content {
    margin-top: var(--spacing-13);
    padding-left: var(--spacing-10);
  }

  .section__two_column_content .content__text .picture_container, .footer__certification {
    -webkit-transform: scale(.92);
        -ms-transform: scale(.92);
            transform: scale(.92);
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
  }

  .footer__top .footer__container > div:not(.footer__logo) {
    -ms-flex-preferred-size: 33.33333333%;
    flex-basis: 33.33333333%;
    max-width: 33.33333333%;
  }

  footer .site_logo svg {
    width: 261px;
    height: 54px;
  }

  .footer__bottom {
    padding: 26px 0 23px;
  }

  .site_cta {
    padding-top: 17px;
    padding-bottom: 11px;
  }

  .site_cta__row {
    padding-right: 70px;
  }

  .site_cta span.typography--special {
    top: -3px;
  }

  .site_cta .button {
    top: -2px;
  }

  .site_cta__close {
    width: 54px;
    height: 54px;
    top: 2px;
    right: -12px;
  }

  .site_cta__close::before, .site_cta__close::after {
    top: 9px;
    left: 26px;
    height: 36px;
  }

  .cookie_box {
    max-width: 490px;
    padding: 22px 24px 24px;
  }

}


@media all and (max-width: 1100px) and (min-width: 992px) {

  .site_cta .cta__title {
    max-width: 590px;
  }

}


@media all and (max-width: 991.98px) {

  h1 br, h2 br, h3 br {
    display: none;
  }

  .section > .section__text + .section__events, .section > .section__teaser_text + .section__events, .section > .section__two_column_content + .section__events,
  .section > .section__text + .section__jobs, .section > .section__teaser_text + .section__jobs, .section > .section__two_column_content + .section__jobs,
  .section > .section__text + .section__list, .section > .section__teaser_text + .section__list, .section > .section__two_column_content + .section__list {
    padding-top: var(--spacing-10);
  }

  .section__teaser--normal .teaser > div {
    width: 100%;
  }

  .section__teaser--normal .teaser__media {
    aspect-ratio: 880 / 610;
  }

  .section__teaser--normal .teaser__content {
    margin-top: var(--spacing-7);
  }

  .section__teaser--overlapping .teaser__content {
    width: calc(100% - var(--spacing-6) * 2);
    top: calc(-1 * var(--spacing-6));
    left: var(--spacing-6);
    margin-bottom: calc(-1 * var(--spacing-6));
    padding: var(--spacing-7) var(--spacing-6) 0;
  }

  .section__image .image {
    aspect-ratio: 992 / 690;
  }

  .section > .section__quotes.width--big:not(.width--full):not(.section__projects) {
    max-width: 100%;
    padding-right: 0;
    padding-left: 0;
  }

  .quotes__slider .swiper_container {
    position: relative;
    margin-right: auto;
    margin-left: auto;
  }

  .quotes__title, .quotes__slider {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
  }

  .quotes__title {
    position: relative;
    padding-bottom: var(--spacing-7);
    margin-bottom: var(--spacing-8);
  }

  .quotes__title h2, .quotes__slider .swiper {
    margin-right: auto;
    margin-left: auto;
    padding-right: var(--spacing-6);
    padding-left: var(--spacing-6);
  }

  .quotes__title h2 {
    margin-bottom: 0;
  }

  .quotes__title::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--brand-black);
  }

  .quote__container p:not(.author) {
    font-size: var(--font-size-3);
  }

  .section > .section__quotes + .section__partners {
    padding-top: var(--spacing-10-5);
  }

  .section__cta--person .cta__bottom {
    margin-top: calc(var(--spacing-8) - var(--spacing-3));
    margin-bottom: var(--spacing-10-5);
    padding-right: 5px;
  }

  .section__cta--person .cta__bottom__left, .section__cta--person .cta__bottom__right {
    margin-top: var(--spacing-3);
  }

  .section__cta--person .cta__portrait {
    position: relative;
  }

  .section__cta--person .cta__portrait .picture_container {
    bottom: 0;
    right: 0;
    left: auto;
    width: auto;
    aspect-ratio: 840 / 1060;
  }

  .offers--v2 .offer__media {
    z-index: 1;
  }

  .offers--v2 .offer__desc {
    position: relative;
    z-index: 2;
  }

  .offers--v2 .offer__desc .button--ghost a {
    margin-top: var(--spacing-6);
  }

  .section__banner--about .banner__title span:not(.cursor) {
    display: block;
  }

  .section__banner--about .banner__title span.cursor {
    position: absolute;
  }

  .section__banner--about .banner__content .content__title, .section__banner--about .banner__content .content__text {
    width: 100%;
  }

  .section__banner--about .banner__content {
    max-width: 500px;
  }

  .section__two_column_content.width--medium .content--location .content__title,
  .section__two_column_content.width--medium .content--location .content__text {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
  }

  .section > .section__two_column_content + .section__media {
    padding-top: var(--spacing-10-5);
  }

  .site_cta .cta__title span {
    display: block
  }

  .site_cta .cta__title span.typography--h4 {
    font-size: var(--font-size-4);
    line-height: 1.15;
    margin-bottom: var(--spacing-2);
  }

  .site_cta span.typography--special {
    font-size: var(--font-size-2);
  }

  .site_cta .button {
    width: 100%;
    margin-top: var(--spacing-5);
  }

}


@media all and (max-width: 991.98px) and (min-width: 576px) {

  .section__banner--about .banner__title span:nth-child(1) {
    padding-left: var(--spacing-1);
  }

  .cta__bottom__left span.typography--h4 {
    font-size: var(--font-size-standard);
  }

  .site_cta__close {
    width: 48px;
    height: 48px;
    top: -7px;
    right: -12px;
  }

  .site_cta__close::before, .site_cta__close::after {
    top: 8px;
    left: 23px;
    height: 32px;
  }

}


@media all and (max-width: 991.98px) and (min-width: 768px) {

  :root {
    --font-size-10: 86px;
    --font-size-9: 84px;
    --font-size-8: 72px;
    --font-size-7: 64px;
    --font-size-6: 50px;
    --font-size-5: 40px;
    --font-size-4: 34px;
    --font-size-3: 28px;
    --font-size-2-5: 22px;
    --font-size-standard: 20px;
    --font-size-2: 18px;
    --font-size-1: 16px;

    --spacing-14: 190px;
    --spacing-13: 160px;
    --spacing-12: 134px;
    --spacing-11: 110px;
    --spacing-10-5: 90px;
    --spacing-10: 74px;
    --spacing-9: 62px;
    --spacing-8: 52px;
    --spacing-7: 42px;
    --spacing-6: 32px;
    --spacing-5: 26px;
    --spacing-4: 20px;
    --spacing-3: 16px;
    --spacing-2: 12px;
    --spacing-1: 8px;

    --height-header: 96px;
  }

  .width--tiny, .section__banner--about .inside.width--big {
    max-width: calc(600px + var(--spacing-6) * 2);
  }

  .width--big, .width--medium, .width--small, .quotes__title h2, .quotes__slider .swiper_container, .site_cta__inside {
    max-width: calc(712px + var(--spacing-6) * 2);
  }

  .section__title--line .title_line {
    max-width: 712px;
  }

  main ul li {
    padding-left: 60px;
  }

  main ul li::before {
    top: 9.5px;
    width: 39px;
  }

  .typography--toptitle-big span.line {
    top: -2px;
  }

  .accordion__inside .picture {
    -webkit-transform: scale(.7);
        -ms-transform: scale(.7);
            transform: scale(.7);
  }

  .icon--cursor {
    -webkit-transform: scale(.6);
        -ms-transform: scale(.6);
            transform: scale(.6);
  }

  .icon--cursor-big {
    -webkit-transform: scale(.5);
        -ms-transform: scale(.5);
            transform: scale(.5);
  }

  .accordion__inside .picture {
    margin-top: var(--spacing-3);
  }

  .pattern, .pattern img {
    height: 48px;
  }

  .toggle {
    width: 48px;
    height: 48px;
  }

  .toggle__icon {
    width: 24px;
    height: 24px;
  }

  .section__media--two .media_container:not(.reverse) .media--big {
    margin-right: 36px;
  }

  .section__media--two .media_container.reverse .media--big {
    margin-left: 36px;
  }

  .section__media--two .media--big {
    width: 479px;
  }

  .section__media--two .media--small {
    width: 174px;
  }

  .section__media--three .media--big {
    width: 246px;
  }

  .section__media--three .media--small {
    width: 205px;
    margin-right: 24px;
    margin-left: 24px;
  }

  .section__media--three .media--medium {
    width: 190px;
  }

  .accordion_trigger {
    padding: 26px 0 17px var(--spacing-10);
  }

  .accordion_trigger .accordion_toggle {
    width: 24px;
    height: 24px;
  }

  .tiles {
    margin: -10px;
  }

  .tiles .tile {
    padding: 10px;
  }

  .tile__content {
    min-height: 429px;
  }

  .list__item {
    padding-top: 22px;
    padding-bottom: 13px;
  }

  .list__item--15 p {
    padding-left: 7%;
  }

  .list__item--30 p {
    padding-left: 15%;
  }

  .list__item--45 p {
    padding-left: 26%;
  }

  .quotes__slider, .quote__container {
    min-height: 220px;
  }

  .quotes__slider .swiper {
    max-width: 550px;
  }

  .quotes__slider svg {
    left: 580px;
  }

  .section__clients, .section__partners {
    padding-bottom: var(--spacing-9);
  }

  .section > .section__clients {
    padding-top: var(--spacing-11);
  }

  .swiper--clients img {
    height: 90px;
    width: auto;
  }

  .section__cta--text .cta img {
    max-width: 118px;
    top: -44px;
    left: -20px;
  }

  .section__cta--text .cta__cursor {
    bottom: -106px;
    right: -60px;
  }

  .section__cta--text .cta__content span:nth-child(1), .section__cta--text .cta__content span:nth-child(4) {
    padding-left: 12%;
  }

  .section__cta--text .cta__content span:nth-child(2) {
    padding-left: 18%;
  }

  .section__cta--text .cta__content span {
    font-size: calc(var(--font-size-7) - 6px);
  }

  .section__cta--person .cta__portrait {
    height: 70vw;
  }

  .section__contact p.typography--h3 a::after {
    top: 13px;
    left: -6px;
    height: 16px;
  }

  .no-touchevents .section__contact p.typography--h3 a:hover::after {
    width: calc(100% + 12px);
  }

  .section > .section__contact--career {
    margin-top: 38px;
  }

  .section__contact--career .contact > div {
    max-width: 600px;
  }

  .section__contact--career .contact > img {
    max-width: 168px;
    bottom: 106px;
    right: var(--spacing-4);
  }

  .offers--v1 .offer .typography--h1 {
    font-size: var(--font-size-7);
  }

  .offers--v1 .offer a > span::after {
    top: 12px;
    left: -10px;
    height: 27px;
  }

  .no-touchevents .offers--v1 .offer.is-active a > span::after {
    width: calc(100% + 20px);
  }

  .section__offers.width--big {
    overflow: hidden;
  }

  .offers--v1 + .offers_clipart {
    top: 105px;
    right: 0;
  }

  .offers--v1 + .offers_clipart img {
    max-width: 442px;
  }

  .offers--v2 .offer {
    padding-top: 218px;
  }

  .offers--v2 .offer + .offer {
    margin-top: 20px;
  }

  .offers--v2 .offer::after {
    top: -20px;
    right: 20px;
    -webkit-transform: translate(20px, 20px);
        -ms-transform: translate(20px, 20px);
            transform: translate(20px, 20px);
  }

  .no-touchevents .offers--v2 .offer:hover::after, .touchevents .offers--v2 .offer.is-active::after {
    right: 20px;
    width: calc(100% - 20px);
    -webkit-box-shadow: 20px 20px 0 var(--brand-black);
            box-shadow: 20px 20px 0 var(--brand-black);
  }

  .offers--v2 .offer__media {
    top: -200px;
    right: 0;
    width: 340px;
  }

  .offers--v2 .offer__media img:not(.hover) {
    max-width: 340px;
  }

  .offers--v2 .offer__media img.hover {
    max-width: 225px;
    bottom: 40px;
  }

  .offers--v2 .offer__desc {
    max-width: 540px;
  }

  .section__text_banner .text_banner {
    padding-top: 32px;
    padding-bottom: 26px;
  }

  .event, .job {
    padding-top: 33px;
    padding-bottom: 24px;
  }

  .section__banner--about .banner:not(.banner--teaser) .banner__title {
    margin-bottom: 175px;
  }

  .section__banner--about .banner--teaser .banner__title {
    margin-bottom: calc(175px + var(--spacing-10));
  }

  .section__banner--about .banner__title span.cursor {
    top: -3px;
    left: 14px;
  }

  .section__banner--about .banner__title span:nth-child(3) {
    padding-left: 162px;
  }

  .section__banner--about .banner__title > img.banner_media-1 {
    max-width: 154px;
    top: 231px;
    left: 87px;
  }

  .section__banner--about .banner__title > img.banner_media-2 {
    max-width: 238px;
    top: 122px;
    right: 73px;
  }

  .partners--big {
    max-width: 573px;
  }

  .partners--medium {
    max-width: 382px;
  }

  .partners {
    margin: calc(-1 * var(--spacing-3));
  }

  .partner {
    padding: var(--spacing-3);
  }

  .partners--large .partner, .partners--huge .partner {
    max-width: 25%;
  }

  .partner__logo img {
    max-width: 154px;
  }

  .section__two_column_content .content__text .picture_container, .footer__certification {
    -webkit-transform: scale(.87);
        -ms-transform: scale(.87);
            transform: scale(.87);
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
  }

  .footer__top .footer__container {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  footer .site_logo svg {
    width: 246px;
    height: 51px;
  }

  .footer__bottom {
    padding: 23px 0 19px;
  }

  .site_cta {
    padding-top: 27px;
    padding-bottom: 32px;
  }

  .site_cta__row {
    padding-right: 80px;
  }

  .cookie_box {
    max-width: 464px;
    padding: 20px 22px 22px;
    border-right: 8px solid var(--brand-black);
    border-bottom: 8px solid var(--brand-black);
  }

}


@media all and (max-width: 767.98px) {

  :root {
    --font-size-1: 15px;

    --spacing-4: 18px;
    --spacing-3: 14px;
    --spacing-2: 10px;
    --spacing-1: 6px;
  }

  .pattern img {
    position: absolute;
    top: 0;
  }

  span.line {
    width: 50px;
  }

  span.line::before {
    height: 1px;
  }

  .header + main .section:first-child {
    padding-top: var(--spacing-14);
  }

  .section > .section__media--one:not(.width--full):not(.section__projects),
  .section >.section__teaser--overlapping:not(.width--full):not(.section__projects) {
    padding-right: 0;
    padding-left: 0;
  }

  .offers--v1 .offer {
    display: block;
  }

  .section__media .media_container {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
  }

  .section__media--two .media--big {
    width: 100%;
  }

  .quote__container {
    padding-bottom: var(--spacing-10-5);
  }

  .quote__container p.author {
    width: 100%;
    padding-right: calc(72px + var(--spacing-6));
  }

  .quotes__slider svg {
    bottom: 4px;
    right: var(--spacing-6);
  }

  .partner {
    max-width: 50%;
  }

  .section__contact p.typography--h3 a span::after {
    height: 2px;
  }

  .section > .section__offers.width--big:not(.width--full):not(.section__projects) {
    max-width: 100%;
    padding-right: 0;
    padding-left: 0;
  }

  .section > .section__offers.width--big .offer_title, .section > .section__offers.width--big .offer a {
    max-width: calc(600px + var(--spacing-6) * 2);
    margin-right: auto;
    margin-left: auto;
    padding-right: var(--spacing-6);
    padding-left: var(--spacing-6);
  }

  .project__details .details span.typography--small {
    font-size: var(--font-size-2);
  }

  .project__details .details h2.typography--h4 {
    font-size: var(--font-size-4);
  }

  .text_banner__text {
    width: 100%;
    margin-bottom: var(--spacing-5);
  }

  .text_banner__text span.typography--h4 {
    font-size: var(--font-size-4);
    font-variation-settings: "wdth" 0, "wght" 400;
  }

  .event h3, .job h3 {
    margin-bottom: var(--spacing-5);
  }

  .section__clients, .section__partners {
    padding-bottom: var(--spacing-9);
  }

  .section > .section__clients {
    padding-top: var(--spacing-12);
  }

  .swiper--clients img {
    width: auto;
  }

  .partners {
    margin: calc(-1 * var(--spacing-5)) calc(-1 * var(--spacing-6));
  }

  .partner {
    padding: var(--spacing-5) var(--spacing-6);
  }

  .offers--v1 .offer + .offer {
    border-top: 1px solid var(--brand-black);
  }

  .offers--v1 .offer_title + .offer {
    padding-top: 0;
  }

  .offers--v1 .offer .offer__title {
    font-size: var(--font-size-7);
  }

  .section__offers .offers--v1 .offer a, .section__offers .offers--v1 .offer a > span {
    max-width: 100%;
  }

  .section__offers .offers--v1 .offer a {
    display: block;
  }

  .section__contact .contact_pattern img:nth-child(2) {
    right: 0;
  }

  .page-template-page-kontakt .intro__text {
    padding-right: 0;
    padding-left: 0;
  }

  .content--location .location__maps {
    margin-top: var(--spacing-8);
    margin-bottom: var(--spacing-7);
  }

  .footer__container > div {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
  }

  .footer__contact {
    margin-top: var(--spacing-4);
  }

  .footer__opening_hours {
    margin-top: var(--spacing-8);
  }

  .footer__certification {
    margin-top: var(--spacing-8);
  }

  .footer__bottom {
    padding: 23px 0 20px;
  }

  .footer__bottom .footer__container div + div {
    margin-top: 4px;
  }

  .cookie_box {
    width: 100%;
    right: 0;
    bottom: 0;
    padding: 19px var(--spacing-6) 21px;
  }

  .cookie_box__container {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
  }

}


@media all and (max-width: 767.98px) and (min-width: 414px) {

  .accordion_trigger .accordion_toggle::before {
    height: 2px;
  }

  .accordion_trigger .accordion_toggle::after {
    width: 2px;
  }

}


@media all and (max-width: 767.98px) and (min-width: 576px) {

  :root {
    --font-size-10: 85px;
    --font-size-9: 74px;
    --font-size-8: 62px;
    --font-size-7: 54px;
    --font-size-6: 46px;
    --font-size-5: 38px;
    --font-size-4: 32px;
    --font-size-3: 26px;
    --font-size-2-5: 21px;
    --font-size-standard: 19px;
    --font-size-2: 17px;
    
    --spacing-14: 150px;
    --spacing-13: 130px;
    --spacing-12: 110px;
    --spacing-11: 96px;
    --spacing-10-5: 80px;
    --spacing-10: 66px;
    --spacing-9: 56px;
    --spacing-8: 46px;
    --spacing-7: 38px;
    --spacing-6: 28px;
    --spacing-5: 24px;

    --height-header: 92px;
  }

  main ul li {
    padding-left: 54px;
  }

  main ul li::before {
    top: 8.5px;
    width: 35px;
  }

  .typography--toptitle-big span.line {
    top: -2px;
  }

  .width--tiny, .section__banner--about .inside.width--big {
    max-width: calc(500px + var(--spacing-6) * 2);
  }

  .width--big, .width--medium, .width--small, .quotes__title h2, .quotes__slider .swiper_container, .site_cta__inside {
    max-width: calc(600px + var(--spacing-6) * 2);
  }

   .toggle {
    width: 46px;
    height: 46px;
  }

  .toggle__icon {
    width: 23px;
    height: 23px;
  }

  .section__title--line .title_line {
    max-width: 600px;
  }

  .accordion__inside .picture {
    -webkit-transform: scale(.65);
        -ms-transform: scale(.65);
            transform: scale(.65);
  }

  .icon--cursor {
    -webkit-transform: scale(.55);
        -ms-transform: scale(.55);
            transform: scale(.55);
  }

  .icon--cursor-big {
    -webkit-transform: scale(.45);
        -ms-transform: scale(.45);
            transform: scale(.45);
  }

  .accordion__inside .picture {
    margin-top: var(--spacing-3);
  }

  .pattern, .pattern img {
    height: 52px;
  }

  .section__media .media + .media {
    margin-top: var(--spacing-6);
  }

  .section__media--two .media--small {
    width: 50%;
  }
  
  .section__media--three .media--big {
    width: 80%;
  }

  .section__media--three .media--small {
    width: 90%;
  }

  .section__media--three .media--medium {
    width: 60%;
  }

  .accordion_trigger {
    padding: 24px 0 17px var(--spacing-9);
  }

  .accordion_trigger .accordion_toggle {
    width: 22px;
    height: 22px;
  }

  .gallery__image, .gallery .grid-sizer {
    width: calc(50% - 14px);
  }

  .gallery {
    margin-right: -7px;
    margin-left: -7px;
  }

  .gallery .gallery__image:not(.grid-sizer) {
    margin: 7px;
  }

  .gallery .gallery__image.grid-sizer {
    margin-right: 7px;
    margin-left: 7px;
  }

  .tiles {
    margin: -8px;
  }

  .tiles .tile {
    padding: 8px;
  }

  .tile__content {
    min-height: 366px;
  }

  .list__item {
    padding-top: 22px;
    padding-bottom: 13px;
  }

  .list__item--15 p {
    padding-left: 5%;
  }

  .list__item--30 p {
    padding-left: 10%;
  }

  .list__item--45 p {
    padding-left: 15%;
  }

  .swiper--clients img {
    height: 80px;
  }

  .partners {
    max-width: 500px;
  }

  .section__cta--text  .cta {
    max-width: calc(500px + var(--spacing-6) * 2);
    margin-left: auto;
    margin-right: auto;
  }

  .section__cta--text .cta img {
    max-width: 110px;
    top: -156px;
    left: 5px;
  }

  .section__cta--text .cta__cursor {
    bottom: -161px;
    right: -27px;
  }

  .section__cta--text .cta_container {
    padding-top: 185px;
    padding-bottom: 185px;
  }

  .section__cta--text .cta__content span:nth-child(1) {
    padding-left: 6%;
  }

  .section__cta--text .cta__content span:nth-child(2) {
    padding-left: 15%;
  }

  .section__cta--text .cta__content span {
    font-size: calc(var(--font-size-7) - 12px);
  }

  .section__cta--person .cta__portrait {
    height: 80vw;
  }

  .section__contact p.typography--h3 a::after {
    top: 12px;
    left: -6px;
    height: 15px;
  }

  .no-touchevents .section__contact p.typography--h3 a:hover::after {
    width: calc(100% + 12px);
  }

  .section__contact--career .contact > img {
    max-width: 120px;
    top: 120px;
    right: var(--spacing-6);
  }

  .offers--v1 .offer {
    padding: 24px 0 16px;
  }

  .offers--v2 .offer {
    padding-top: 240px;
  }

  .offers--v2 .offer + .offer {
    margin-top: 16px;
  }

  .offers--v2 .offer::after {
    top: -16px;
    right: 16px;
    -webkit-transform: translate(16px, 16px);
        -ms-transform: translate(16px, 16px);
            transform: translate(16px, 16px);
  }

  .no-touchevents .offers--v2 .offer:hover::after, .touchevents .offers--v2 .offer.is-active::after {
    right: 16px;
    width: calc(100% - 16px);
    -webkit-box-shadow: 16px 16px 0 var(--brand-black);
            box-shadow: 16px 16px 0 var(--brand-black);
  }

  .offers--v2 .offer__media {
    top: -214px;
    right: 0;
    width: 272px;
  }

  .offers--v2 .offer__media img:not(.hover) {
    max-width: 272px;
  }

  .offers--v2 .offer__media img.hover {
    max-width: 202px;
    bottom: 30px;
  }

  .section__text_banner .text_banner {
    padding-top: 31px;
    padding-bottom: 36px;
  }

  .event, .job {
    padding-top: 35px;
    padding-bottom: 34px;
  }

  .section__banner--about .banner:not(.banner--teaser) .banner__title {
    margin-bottom: 153px;
  }

  .section__banner--about .banner--teaser .banner__title {
    margin-bottom: calc(153px + var(--spacing-10));
  }

  .section__banner--about .banner__title span.cursor {
    top: -7px;
    left: 16px;
  }

  .section__banner--about .banner__title span:nth-child(3) {
    padding-left: 142px;
  }

  .section__banner--about .banner__title > img.banner_media-1 {
    max-width: 132px;
    top: 231px;
    left: 87px;
  }

  .section__banner--about .banner__title > img.banner_media-2 {
    max-width: 204px;
    top: 124px;
    right: 15px;
  }

  .section__two_column_content .content__text .picture_container, .footer__certification {
    -webkit-transform: scale(.83);
        -ms-transform: scale(.83);
            transform: scale(.83);
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
  }

  .footer__top .footer__container {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  footer .site_logo svg {
    width: 232px;
    height: 48px;
  }

  .site_cta {
    padding-top: 25px;
    padding-bottom: 30px;
  }

  .site_cta__row {
    padding-right: 60px;
  }

}


@media all and (max-width: 575.98px) {

  :root {
    --font-size-standard: 18px;
    --font-size-2: 15px;
  }

  main ul li {
    padding-left: 42px;
  }

  main ul li::before {
    top: 7.5px;
    width: 28px;
  }

  .typography--toptitle-big span.line {
    top: -2px;
  }

  .toggle {
    width: 42px;
    height: 42px;
  }

  .toggle__icon {
    width: 21px;
    height: 21px;
  }

  .section > .section__media:not(.width--full):not(.section__projects) {
    padding-right: 0;
    padding-left: 0;
  }

  .section__media--two .media, .section__media--three .media {
    width: 100%;
  }

  .gallery__image, .gallery .grid-sizer {
    width: 100%;
  }

  .quotes__slider svg {
    -webkit-transform: scale(.95);
        -ms-transform: scale(.95);
            transform: scale(.95);
    -webkit-transform-origin: bottom right;
        -ms-transform-origin: bottom right;
            transform-origin: bottom right;
  }

  .tiles .tile {
    width: 100%;
  }

  .tiles .tile + .tile {
    margin-top: var(--spacing-4);
  }

  .tiles:not(.tiles--team) .tile__content, .tiles:not(.tiles--team) .tile__hover {
    padding: var(--spacing-6);
  }

  .tile .tile__content .typography--lead {
    font-size: var(--font-size-6);
  }

  .tile .tile__hover .typography--lead {
    font-size: var(--font-size-5);
  }

  .tile .typography--special {
    font-size: var(--font-size-2-5);
  }

  .tile__content {
    aspect-ratio: 840 / 1060;
  }

  .tiles--team .tile--text .tile__content, .tiles--team .tile__hover {
    padding: var(--spacing-6);
  }

  .tile__toggle {
    bottom: var(--spacing-6);
    right: var(--spacing-6);
  }

  .tiles--team h3 {
    font-size: var(--font-size-4);
    margin-bottom: var(--spacing-2);
  }

  .section__cta--text .cta img {
    max-width: 100px;
    top: -147px;
    left: 5px;
  }

  .section__cta--text .cta_container {
    padding-top: 170px;
  }

  .cta__bottom__left span.typography--h4 {
    font-size: var(--font-size-2);
  }

  .section__cta--person .cta__portrait {
    height: 90vw;
  }

  .section__contact--career .contact > img {
    right: var(--spacing-6);
  }

  .offers--v1 .offer .typography--h1 {
    font-size: var(--font-size-6);
    letter-spacing: calc(-1 * (var(--font-size-6) * 0.01));
  }

  .section__banner--about .banner__title span:not(.cursor) {
    font-size: var(--font-size-9);
    letter-spacing: calc(-1 * (var(--font-size-9) * 0.01));
  }

  .section__contact--career .contact {
    padding-bottom: var(--spacing-12);
  }

  .section__contact .contact_pattern img:nth-child(2) {
    display: none;
  }

  .swiper--clients img {
    height: 70px;
  }

  .offers--v2 .offer + .offer {
    margin-top: 14px;
  }

  .offers--v2 .offer::after {
    top: -14px;
    right: 14px;
    -webkit-transform: translate(14px, 14px);
        -ms-transform: translate(14px, 14px);
            transform: translate(14px, 14px);
  }

  .no-touchevents .offers--v2 .offer:hover::after, .touchevents .offers--v2 .offer.is-active::after {
    right: 14px;
    width: calc(100% - 14px);
    -webkit-box-shadow: 14px 14px 0 var(--brand-black);
            box-shadow: 14px 14px 0 var(--brand-black);
  }

  .accordion__inside .picture {
    -webkit-transform: scale(.6);
        -ms-transform: scale(.6);
            transform: scale(.6);
    margin-top: var(--spacing-2);
  }

  .accordion__inside .color__container { 
    border-right: 8px solid var(--brand-black);
    border-bottom: 8px solid var(--brand-black);
  }

  .section__two_column_content .content__text .picture_container, .footer__certification {
    -webkit-transform: scale(.77);
        -ms-transform: scale(.77);
            transform: scale(.77);
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
  }

  footer .site_logo svg {
    width: 222px;
    height: 46px;
  }

  .cookie_box__content {
    font-size: 16px;
  }

}


@media all and (max-width: 575.98px) and (min-width: 375px) {

  :root {
    --font-size-10: 79px;
  }

}


@media all and (max-width: 575.98px) and (min-width: 414px) {

  :root {
    --font-size-9: 62px;
    --font-size-8: 54px;
    --font-size-7: 46px;
    --font-size-6: 40px;
    --font-size-5: 35px;
    --font-size-4: 29px;
    --font-size-3: 25px;
    --font-size-2-5: 21px;

    --spacing-14: 150px;
    --spacing-13: 120px;
    --spacing-12: 110px;
    --spacing-11: 90px;
    --spacing-10-5: 70px;
    --spacing-10: 60px;
    --spacing-9: 50px;
    --spacing-8: 40px;
    --spacing-7: 32px;
    --spacing-6: 24px;
    --spacing-5: 20px;

    --height-header: 88px;
  }

  .width--tiny, .section__banner--about .inside.width--big {
    max-width: calc(450px + var(--spacing-6) * 2);
  }

  .icon--cursor {
    -webkit-transform: scale(.4);
        -ms-transform: scale(.4);
            transform: scale(.4);
  }

  .icon--cursor-big {
    -webkit-transform: scale(.35);
        -ms-transform: scale(.35);
            transform: scale(.35);
  }

  .pattern, .pattern img {
    height: 44px;
  }

  .list__item {
    padding-top: 22px;
    padding-bottom: 14px;
  }

  .list__item--15 p {
    padding-left: 4%;
  }

  .list__item--30 p {
    padding-left: 8%;
  }

  .list__item--45 p {
    padding-left: 12%;
  }

  .accordion_trigger {
    padding: 24px 0 17px 44px;
  }

  .accordion_trigger .accordion_toggle {
    width: 20px;
    height: 20px;
  }

  .section__cta--text .cta__cursor {
    right: -11px;
    bottom: -186px;
  }

  .section__cta .cta > .cta__content {
    max-width: 400px;
    margin: 0 auto;
  }

  .section__cta--text .cta__content span:nth-child(1), .section__cta--text .cta__content span:nth-child(4) {
    padding-left: 4%;
  }

  .section__cta--text .cta__content span:nth-child(3) {
    padding-left: 12%;
  }

  .section__cta--text .cta__content span {
    font-size: calc(var(--font-size-7) - 10px);
  }

  .section__cta--text .cta_container {
    padding-bottom: 125px;
  }

  .section__contact p.typography--h3 a::after {
    top: 8px;
    left: -5px;
    height: 12px;
  }

  .no-touchevents .section__contact p.typography--h3 a:hover::after {
    width: calc(100% + 10px);
  }

  .section__contact--career .contact > img {
    max-width: 96px;
    top: 90px;
  }

  .offers--v1 .offer {
    padding: 24px 0 10px;
  }

  .offers--v2 .offer {
    padding-top: 204px;
  }

  .offers--v2 .offer__media {
    top: -194px;
    right: 0;
    width: 238px;
  }

  .offers--v2 .offer__media img:not(.hover) {
    max-width: 238px;
  }

  .offers--v2 .offer__media img.hover {
    max-width: 158px;
    bottom: 25px;
  }

  .section__text_banner .text_banner {
    padding-top: 32px;
    padding-bottom: 36px;
  }

  .event, .job {
    padding-top: 34px;
    padding-bottom: 34px;
  }

  .section__banner--about .banner:not(.banner--teaser) .banner__title {
    margin-bottom: 132px;
  }

  .section__banner--about .banner--teaser .banner__title {
    margin-bottom: calc(132px + var(--spacing-10));
  }

  .section__banner--about .banner__title span.cursor {
    top: -39px;
    left: 3px;
  }

  .section__banner--about .banner__title span:nth-child(3) {
    padding-left: 94px;
  }

  .section__banner--about .banner__title > img.banner_media-1 {
    max-width: 110px;
    top: 160px;
    left: 60px;
  }      

  .section__banner--about .banner__title > img.banner_media-2 {
    max-width: 170px;
    top: 85px;
    left: 53%;
  }

  .section__contact p.typography--h3 {
    font-size: 28px;
  }

  .gallery__image:not(.grid-sizer) + .gallery__image {
    margin-top: var(--spacing-4);
  }

  .site_cta {
    padding-top: 22px;
    padding-bottom: 27px;
  }

  .site_cta__row {
    padding-right: 60px;
  }

  .site_cta__close {
    width: 50px;
    height: 50px;
    top: -10px;
    right: -14px;
  }

  .site_cta__close::before, .site_cta__close::after {
    top: 11px;
    left: 24px;
    height: 28px;
  }

}


@media all and (max-width: 413.98px) {

  :root {
    --font-size-4: 27px;
    --font-size-3: 24px;
    --font-size-2-5: 20px;

    --spacing-14: 140px;
    --spacing-13: 110px;
    --spacing-12: 100px;
    --spacing-11: 80px;
    --spacing-10-5: 66px;
    --spacing-10: 56px;
    --spacing-9: 46px;
    --spacing-8: 36px;
    --spacing-7: 30px;
    --spacing-6: 22px;
    --spacing-5: 18px;

    --height-header: 84px;
  }

  .pattern, .pattern img {
    height: 44px;
  }

  .accordion_trigger {
    padding: 22px 0 17px 38px;
  }

  .accordion_trigger .accordion_toggle {
    width: 19px;
    height: 19px;
  }

  .accordion_trigger .accordion_toggle::before {
    height: 1.5px;
  }

  .accordion_trigger .accordion_toggle::after {
    width: 1.5px;
  }

  .offers--v2 .offer {
    padding-top: 172px;
  }

  .offers--v2 .offer__media {
    top: -162px;
    right: 0;
    width: 204px;
  }

  .offers--v2 .offer__media img:not(.hover) {
    max-width: 204px;
  }

  .offers--v2 .offer__media img.hover {
    max-width: 135px;
    bottom: 25px;
  }

  .section__banner--about .banner:not(.banner--teaser) .banner__title {
    margin-bottom: 31%;
  }

  .section__banner--about .banner--teaser .banner__title {
    margin-bottom: calc(31% + var(--spacing-10));
  }

  .section__banner--about .banner__title span:nth-child(3) {
    padding-left: 94px;
  }

  .section__banner--about .banner__title > img.banner_media-1 {
    max-width: 88px;
    top: 83%;
    left: 17%;
  }      

  .section__banner--about .banner__title > img.banner_media-2 {
    max-width: 136px;
    top: 44%;
    right: calc(-1 * var(--spacing-2));
  }

  .gallery__image:not(.grid-sizer) + .gallery__image {
    margin-top: var(--spacing-3);
  }

  .site_cta {
    padding-top: 22px;
    padding-bottom: 27px;
  }

  .site_cta__row {
    padding-right: 46px;
  }

  .site_cta__close {
    width: 46px;
    height: 46px;
    top: -10px;
    right: -14px;
  }

  .site_cta__close::before, .site_cta__close::after {
    top: 10px;
    left: 22px;
    height: 26px;
  }

}


@media all and (max-width: 413.98px) and (min-width: 375px) {

  :root {
    --font-size-9: 56px;
    --font-size-8: 50px;
    --font-size-7: 42px;
    --font-size-6: 37px;
    --font-size-5: 33px;
  }

  .icon--cursor {
    -webkit-transform: scale(.35);
        -ms-transform: scale(.35);
            transform: scale(.35);
  }

  .icon--cursor-big {
    -webkit-transform: scale(.3);
        -ms-transform: scale(.3);
            transform: scale(.3);
  }

  .list__item {
    padding-top: 22px;
    padding-bottom: 14px;
  }

  .list__item--15 p {
    padding-left: 2%;
  }

  .list__item--30 p {
    padding-left: 4%;
  }

  .list__item--45 p {
    padding-left: 8%;
  }

  .section__cta--text .cta_container {
    padding-bottom: 115px;
  }

  .section__cta--text .cta__cursor {
    right: -11px;
    bottom: -186px;
  }

  .section__cta--text .cta__content span:nth-child(3) {
    padding-left: 12%;
  }

  .section__cta--text .cta__content span {
    font-size: calc(var(--font-size-7) - 9px);
  }

  .section__contact p.typography--h3 a::after {
    top: 9px;
    left: -5px;
    height: 10px;
  }

  .no-touchevents .section__contact p.typography--h3 a:hover::after {
    width: calc(100% + 10px);
  }

  .section__contact--career .contact > img {
    max-width: 94px;
    top: 80px;
  }

  .section__banner--about .banner__title span.cursor {
    top: -44px;
    left: 2px;
  }

  .offers--v1 .offer {
    padding: 24px 0 10px;
  }

  .section__text_banner .text_banner {
    padding-top: 32px;
    padding-bottom: 36px;
  }

  .event, .job {
    padding-top: 33px;
    padding-bottom: 34px;
  }


}


@media all and (max-width: 413.98px) and (min-width: 390px) {

  .section__contact p.typography--h3 {
    font-size: 26px;
  }

}


@media all and (max-width: 389.98px) and (min-width: 375px) {

  .section__contact p.typography--h3 {
    font-size: 25px;
  }

}


@media all and (max-width: 374.98px) {

  :root {
    --font-size-10: 74px;
    --font-size-9: 52px;
    --font-size-8: 48px;
    --font-size-7: 40px;
    --font-size-6: 35px;
    --font-size-5: 32px;
  }

  .icon--cursor {
    -webkit-transform: scale(.3);
        -ms-transform: scale(.3);
            transform: scale(.3);
  }

  .icon--cursor-big {
    -webkit-transform: scale(.25);
        -ms-transform: scale(.25);
            transform: scale(.25);
  }

  .list__item {
    padding-top: 22px;
    padding-bottom: 14px;
  }

  .list__item--15 p {
    padding-left: 2%;
  }

  .list__item--30 p {
    padding-left: 4%;
  }

  .list__item--45 p {
    padding-left: 8%;
  }

  .section__cta--text .cta_container {
    padding-bottom: 110px;
  }

  .section__cta--text .cta__cursor {
    right: -11px;
    bottom: -175px;
  }

  .section__cta--text .cta__content span:nth-child(3) {
    padding-left: 12%;
  }

  .section__cta--text .cta__content span {
    font-size: calc(var(--font-size-7) - 9px);
  }

  .section__contact p.typography--h3 a::after {
    top: 8px;
    left: -5px;
    height: 10px;
  }

  .no-touchevents .section__contact p.typography--h3 a:hover::after {
    width: calc(100% + 10px);
  }

  .section__contact p.typography--h3 {
    font-size: 24px;
  }

  .section__contact--career .contact > img {
    max-width: 94px;
    top: 72px;
  }

  .section__banner--about .banner__title span.cursor {
    top: -54px;
    left: 2px;
  }

  .offers--v1 .offer {
    padding: 24px 0 10px;
  }

  .section__text_banner .text_banner {
    padding-top: 32px;
    padding-bottom: 36px;
  }

  .event, .job {
    padding-top: 33px;
    padding-bottom: 34px;
  }

}