@charset "UTF-8";
/*============= VARIABLES =============*/
/*$color-two: #bbcf00;*/
:root,
:before,
:after {
  --em-per-pixels: calc(1em / 16);
  --rem-per-pixels: calc(1rem / 16);
  --max-width-xl: 120rem;
  --max-width-l: 100rem;
  --max-width-m: 90rem;
  --max-width-s: 60rem;
  --max-width-xs: 40rem;
  --max-width-xxs: 30rem;
  --vert-whitespace: 5rem;
  --wide-whitespace: 5rem;
  --desktop-whitespace: 5rem;
  --laptop-whitespace: 5rem;
  --mobile-whitespace: 3.75rem;
  --desktop-width: 1600px;
  --laptop-width: 1280px;
  --tablet-width: 1024px;
  --portrait-width: 960px;
  --portrait-width-std: 768px;
  --mobile-width: 640px;
  --gap-col: calc(var(--vert-whitespace) / 2);
  --gap-row: calc(var(--vert-whitespace) / 2);
  --gap-hdl: 1.5625rem;
  --gap-txt: 0.9375rem;
  --black: #1a1a18;
  --black-rgb: 26, 26, 24;
  --darkgrey: #333;
  --darkgrey-rgb: 51, 51, 51;
  --grey: #777;
  --grey-rgb: 119, 119, 119;
  --lightgrey: #efefef;
  --lightgrey-rgb: 239, 239, 239;
  --white: #fff;
  --white-rgb: 255, 255, 255;
  --blue: #1a70b8;
  --blue-rgb: 26, 112, 184;
  --green: #a4c74e;
  --green-rgb: 164, 199, 78;
  --color-bg: var(--white);
  --color-bg-rgb: var(--white-rgb);
  --color-txt: var(--grey);
  --color-txt-rgb: var(--grey-rgb);
  --color-one: var(--blue);
  --color-one-rgb: var(--blue-rgb);
  --color-one-light: #92bcdd;
  --color-one-light-rgb: 179, 217, 247;
  --color-two: var(--green);
  --color-two-rgb: var(--green-rgb);
  --color-two-light: #c3ea61;
  --color-two-light-rgb: 195, 234, 97;
  --color-two-dark: #82b30a;
  --color-two-dark-rgb: 130, 179, 10;
  --color-error: #e42343;
  --linear-gradient-01: linear-gradient(to right, rgba(var(--color-one-rgb), 1), rgba(var(--color-two-rgb), 1) 70%);
  --main-font: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-serif: Garamond, Baskerville, "Baskerville Old Face", "Hoefler Text", "Times New Roman", serif;
  --font-regular: quicksand-regular;
  --font-bold: quicksand-bold;
  --font-running-text: opensans-regular;
  --font-running-text-bold: opensans-bold;
  --font-condensed: pathway;
  --font-serif: droidserif-italic;
  --font-serif-bold: droidserif-bolditalic;
  --font-script: arsilon;
  --button-fontsize: 1.125rem;
  --running-text-fontsize: 1rem;
  --running-text-lineheight: 1.625rem;
  --border-radius-min: calc(5 * var(--rem-per-pixels));
  --border-radius-std: calc(10 * var(--rem-per-pixels));
  --border-radius-mid: calc(20 * var(--rem-per-pixels));
  --period-one: 500ms;
  --period-two: 750ms;
  --period-three: 1000ms;
  --cubic-bezier: cubic-bezier(0.165, 0.84, 0.44, 1);
  --text-shadow: 1px 3px 8px rgba(0, 0, 0, 0.5);
  --box-shadow-02: 12px 15px 23px -6px rgb(0 0 0 / 31%);
  --menu-height: calc(120 * var(--rem-per-pixels)); }

@media only screen and (min-width: 100rem) {
  --running-text-fontsize: 1.125rem; }

@media only screen and (max-width: 100rem) {
  :root {
    --vert-whitespace: var(--desktop-whitespace); } }

@media only screen and (max-width: 90rem) {
  :root {
    --menu-height: 80px; } }

@media only screen and (max-width: 80rem) {
  :root {
    --vert-whitespace: var(--laptop-whitespace);
    --running-text-lineheight: 1.5rem; } }

@media only screen and (max-width: 64rem) {
  --button-fontsize: 1rem;
  --running-text-lineheight: 1.375rem; }

@media only screen and (max-width: 60rem) {
  :root {
    --vert-whitespace: var(--mobile-whitespace);
    --gap-col: 5%;
    --button-fontsize: 0.875rem; } }

@media only screen and (max-width: 40rem) {
  --running-text-fontsize: 0.9375rem; }

html,
body {
  text-rendering: optimizeLegibility !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale; }

.owl-nav:before, .pages-overview:before,
.pages-overview-two:before, .docs:before, .clearfix:before, #main-container:before,
#main:before, .owl-nav:after, .pages-overview:after,
.pages-overview-two:after, .docs:after, .clearfix:after, #main-container:after,
#main:after {
  content: "";
  display: table; }

.owl-nav:after, .pages-overview:after,
.pages-overview-two:after, .docs:after, .clearfix:after, #main-container:after,
#main:after {
  clear: both; }

.select.min.focus .options {
  box-shadow: 0px 10px 25px 0px rgba(0, 0, 0, 0.25); }

@keyframes ani-width {
  0% {
    width: 0; }
  100% {
    width: 100%; } }

@keyframes ani-bar {
  0% {
    transform: translate3d(-100%, 0, 0); }
  100% {
    transform: translate3d(0, 0, 0); } }

@keyframes scale-pulse {
  0% {
    transform: scale(1);
    opacity: 1; }
  100% {
    transform: scale(1.5);
    opacity: 0; } }

/*===== STYLES RESET =====*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

html {
  line-height: 1; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption,
th,
td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q,
blockquote {
  quotes: none; }

q:before,
q:after,
blockquote:before,
blockquote:after {
  content: "";
  content: none; }

a img {
  border: none; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/*===== BORDER BOX SIZING =====*/
*,
*:before,
*:after {
  box-sizing: border-box; }

html,
body {
  font-family: opensans-regular, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 24px;
  color: var(--color-txt);
  border-color: var(--color-txt); }

::-moz-selection {
  color: var(--white);
  background-color: var(--color-one);
  text-shadow: none; }

::selection {
  color: var(--white);
  background-color: var(--color-one);
  text-shadow: none; }

body {
  width: 100%;
  display: block; }

.visible,
.invisible {
  transition: opacity 350ms ease; }

.invisible {
  opacity: 0; }

.visible {
  opacity: 1; }

@media only screen and (max-width: 1280px) {
  .invisible {
    opacity: 1; } }

.TextformatterVideoEmbed {
  float: left;
  width: 100%;
  margin: 20px 0 40px 0 !important;
  width: 100%;
  display: block; }

.TextformatterVideoEmbed:first-child {
  margin-top: 0 !important; }

.TextformatterVideoEmbed:last-child {
  margin-bottom: 0 !important; }

/*========== FONT STYLES ==========*/
@font-face {
  font-family: "quicksand-regular";
  src: url("../fonts/quicksand/Quicksand-Regular.woff2") format("woff2"), url("../fonts/quicksand/Quicksand-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "quicksand-bold";
  src: url("../fonts/quicksand/Quicksand-Bold.woff2") format("woff2"), url("../fonts/quicksand/Quicksand-Bold.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "opensans-regular";
  src: url("../fonts/opensans/opensans.woff2") format("woff2"), url("../fonts/opensans/opensans.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "opensans-italic";
  src: url("../fonts/opensans/opensans-italic.woff2") format("woff2"), url("../fonts/opensans/opensans-italic.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "opensans-bold";
  src: url("../fonts/opensans/opensans-bold.woff2") format("woff2"), url("../fonts/opensans/opensans-bold.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "opensans-bolditalic";
  src: url("../fonts/opensans/opensans-bolditalic.woff2") format("woff2"), url("../fonts/opensans/opensans-bolditalic.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "droidserif-italic";
  src: url("../fonts/droidserif/DroidSerif-Italic-webfont.woff") format("woff");
  font-style: normal;
  font-weight: 200; }

@font-face {
  font-family: "droidserif-bolditalic";
  src: url("../fonts/droidserif/DroidSerif-BoldItalic-webfont.woff") format("woff");
  font-style: normal;
  font-weight: 600; }

@font-face {
  font-family: "arsilon";
  src: url("../fonts/arsilon/arsilon.woff2") format("woff2"), url("../fonts/arsilon/arsilon.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

.blue-text *,
* .blue-text {
  --color-txt: var(--blue); }

* .green-text,
.green-text * {
  --color-txt: var(--green); }

.color-one *,
* .color-one {
  --color-txt: var(--color-one); }

.color-two *,
* .color-two {
  --color-txt: var(--color-two); }

* .txt-black,
.txt-black * {
  --color-txt: var(--black); }

* .txt-grey,
.txt-grey * {
  --color-txt: var(--grey); }

* .txt-lightgrey,
.txt-lightgrey * {
  color: var(--lightgrey); }

* .txt-white,
.txt-white * {
  --color-txt: var(--white); }

h1,
h2,
h3 {
  margin-bottom: var(--gap-hdl); }

h4,
h5,
h6,
p,
figcaption,
blockquote,
address,
.cat-title {
  margin-bottom: var(--gap-txt); }

article li,
.teaser-info li {
  margin-bottom: 0.625rem; }

article li ul,
.teaser-info li ul {
  margin-top: var(--gap-txt); }

:is(article, header) :is(h1, h2, h3, h4, h5, h6, p, ul, ol, li) {
  float: left;
  width: 100%;
  display: block; }

:is(article, header) li {
  display: list-item; }

.caption :is(h1, h2, h3, h4, h5, h6, p) {
  width: 100%;
  display: block; }

:is(p, ul, ol) + :is(h1, h2, h3, h4, h5, h6) {
  margin-top: var(--gap-txt); }

.c-info-min p {
  margin-bottom: 2px; }

h1,
h2,
h3,
h4,
h5,
h6 {
  float: left;
  width: 100%;
  font-family: var(--font-regular);
  --color-txt: var(--color-one);
  display: block; }

:is(h1, h2, h3, h4, h5, h6, p, li) strong {
  font-family: var(--font-bold);
  font-weight: 800; }

:is(h1, h2, h3, h4, h5, h6) q {
  font-size: inherit;
  letter-spacing: normal; }

* .title,
.title * {
  color: var(--color-two); }

.erw-lyt * h1,
.erw-lyt * h2,
.erw-lyt * h3 {
  color: var(--color-one); }

.kin-lyt * h1,
.kin-lyt * h2,
.kin-lyt * h3 {
  color: var(--color-two); }

header p,
header li {
  max-width: 64rem; }

header p[style="text-align:center;"] {
  position: relative;
  max-width: none;
  margin: 0; }

@media only screen and (min-width: 100rem) {
  p,
  figcaption,
  article li,
  .teaser-info li {
    font-size: 1.125rem;
    line-height: 1.5em; } }

:is(p, li, figcaption) strong {
  font-family: var(--font-running-text-bold); }

article a,
.section-header a,
.section-footer a,
.caption p a,
.hint-win a,
form a {
  position: relative;
  display: inline-block;
  color: var(--color-txt);
  text-decoration: none;
  outline: none;
  appearance: none !important; }

article a,
.caption p a,
.hint a,
.cc-toggle-btn {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.125rem; }

h1 a:after,
h2 a:after,
h3 a:after {
  content: none; }

article .button a::after {
  content: none; }

.caption h2 a,
.caption h3 a {
  text-decoration: underline; }

#main blockquote *,
cite,
#main cite *,
.serif,
#main .serif *,
#main .slide a.caption-wrapper .wrapper-s * {
  margin-bottom: 0;
  font-family: var(--font-script), Garamond, Baskerville, "Baskerville Old Face", "Hoefler Text", "Times New Roman", serif; }

blockquote {
  position: relative;
  width: 100%;
  clear: both;
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  row-gap: 0.9375rem; }

.column blockquote {
  float: left; }

* blockquote strong,
* cite strong,
* .serif strong {
  font-family: var(--font-serif);
  font-weight: 600; }

blockquote *:first-child:before,
blockquote *:last-child:after {
  display: inline;
  font-size: 1.875rem;
  line-height: inherit;
  white-space: nowrap; }

blockquote *:first-child:before {
  content: "»\00a0";
  margin-right: 5px; }

blockquote *:last-child:after {
  content: "\00a0«";
  margin-left: 5px; }

blockquote span *:first-child:before,
blockquote span *:last-child:after,
blockquote strong *:first-child:before,
blockquote strong *:last-child:after,
blockquote p *:first-child:before,
blockquote p *:last-child:after,
blockquote a:first-child:before,
blockquote a:last-child:after {
  content: none; }

.erw blockquote,
.erw blockquote * {
  --color-txt: var(--color-one); }

.kin blockquote,
.kin blockquote * {
  --color-txt: var(--color-two); }

.serif,
.serif * {
  font-family: var(--font-serif); }

.handwriting,
.handwriting * {
  font-family: var(--font-script) !important;
  font-weight: 100; }

h3 .handwriting {
  font-size: 1.5rem;
  line-height: 1.5em; }

* .herotext,
.herotext *,
.herotext *::before,
.herotext *::after {
  font-size: 1.5rem;
  line-height: 1.5em; }

address {
  display: block; }

#main .slide a.caption-wrapper .wrapper-s * {
  font-size: 3.2vh;
  text-align: center; }

#pageheader h1 {
  font-size: 2.625rem;
  line-height: 1.125em; }

h1,
h2,
.slide .caption h1,
.slide blockquote p {
  font-size: 2.25rem;
  line-height: 1.125em; }

h3,
.toggle h2,
.headline p,
blockquote p,
* .herotext p {
  font-size: 1.75rem;
  line-height: 1.25em; }

h4,
h5,
h6,
.teaserboards header h3,
.teaser-title h3,
.title p {
  font-size: 1.375rem;
  line-height: 1.125em; }

p,
figcaption,
:is(article, header, .caption, .teaser-info) li {
  font-family: var(--font-running-text);
  font-size: var(--running-text-fontsize);
  line-height: var(--running-text-lineheight); }

@media only screen and (max-width: 100rem) {
  #pageheader h1 {
    font-size: 2.625rem;
    line-height: 1.125em; }
  h1,
  h2,
  .slide blockquote p {
    font-size: 2.25rem;
    line-height: 1.125em; }
  * .herotext,
  .herotext *,
  .herotext *::before,
  .herotext *::after {
    font-size: 1.5rem;
    line-height: 1.5em; }
  h3,
  .toggle h2,
  .headline p,
  blockquote p,
  * p.herotext {
    font-size: 1.5rem;
    line-height: 1.25em; }
  * p.herotext.c-phone span::before {
    font-size: 1.5rem;
    line-height: 1.25em; }
  h4,
  h5,
  h6,
  .teaserboards header h3,
  .teaser-title h3,
  .title p .teaserlist .teaser-item.vacancy header h4 {
    font-size: 1.125rem;
    line-height: 1.25em; } }

@media only screen and (max-width: 1152px) {
  #pageheader h1 {
    font-size: 2rem;
    line-height: 1.125em; }
  h1,
  h2,
  .slide blockquote p {
    font-size: 1.625rem;
    line-height: 1.125em; }
  * .herotext,
  .herotext *,
  .herotext *::before,
  .herotext *::after {
    font-size: 1.375rem;
    line-height: 1.5em; }
  h3,
  .toggle h2,
  .headline p,
  .title p,
  blockquote p,
  * p.herotext {
    font-size: 1.5rem;
    line-height: 1.5em; }
  * p.herotext.c-phone span::before {
    font-size: 1.25rem;
    line-height: 1.5em; }
  h4,
  h5,
  h6,
  .teaserboards header h3,
  .teaser-title h3,
  .title p {
    font-size: 1.375rem;
    line-height: 1.25em; }
  blockquote *:first-child:before,
  blockquote *:last-child:after {
    font-size: 24px; } }

@media only screen and (max-width: 60rem) {
  blockquote *:first-child:before,
  blockquote *:last-child:after {
    font-size: 1.5rem; } }

@media only screen and (max-width: 40rem) {
  h1,
  h2,
  blockquote h1 {
    font-size: 1.5rem;
    line-height: 1.125em; }
  h3,
  .toggle h2,
  .headline p,
  blockquote p,
  h4,
  h5,
  h6,
  .teaserboards header h3,
  .teaser-title h3,
  .title p {
    font-size: 1.25rem;
    line-height: 1.25em; }
  * .herotext,
  .herotext *,
  .herotext *::before,
  .herotext *::after {
    font-size: 1.25rem;
    line-height: 1.5em; } }

@media only screen and (max-width: 480px) {
  #pageheader h1,
  #pageheader h2,
  .slide .caption h1,
  .slide .caption h2 {
    font-size: 1.5rem;
    line-height: 1.125em; }
  h1,
  h2 {
    font-size: 1.25rem;
    line-height: 1.125em; }
  h3,
  .toggle h2,
  .headline p,
  h4,
  h5,
  h6,
  .teaserboards header h3,
  .teaser-title h3,
  .title p {
    font-size: 1.125rem;
    line-height: 1.25em; }
  * .herotext,
  .herotext *,
  .herotext *::before,
  .herotext *::after {
    font-size: 1.125rem;
    line-height: 1.5em; } }

/*--------- ICON FONT ---------*/
@font-face {
  font-family: "superduperfont";
  src: url("../fonts/superduperfont/superduperfont.woff2") format("woff2"), url("../fonts/superduperfont/superduperfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

.icon {
  position: relative;
  width: auto;
  height: auto;
  display: inline-block;
  text-align: left; }

.icon::before {
  position: relative;
  display: inline-block;
  width: auto;
  height: auto;
  font-family: "superduperfont";
  text-align: left;
  text-transform: none;
  vertical-align: bottom;
  font-weight: 200; }

.i-lg {
  font-size: 1.2em; }

.mainfooter .icon::before {
  font-size: 1.125em; }

.button .icon::before {
  line-height: 43px; }

/*--------- ICON CLASSES / ICON VARIABLES ARRAY ---------*/
.i-accessible::before {
  content: "\ea01"; }

.i-active-protection-2059089::before {
  content: "\ea02"; }

.i-address-book-2204::before {
  content: "\ea03"; }

.i-address-card-2204::before {
  content: "\ea04"; }

.i-archive-paper::before {
  content: "\ea05"; }

.i-arrow-100210::before {
  content: "\ea06"; }

.i-arrow-3771902-01::before {
  content: "\ea07"; }

.i-arrow-3771902-02::before {
  content: "\ea08"; }

.i-arrow-back-sharp::before {
  content: "\ea0a"; }

.i-arrow-back::before {
  content: "\ea09"; }

.i-arrow-down-2::before {
  content: "\ea0b"; }

.i-arrow-down-3::before {
  content: "\ea0c"; }

.i-arrow-down-sharp::before {
  content: "\ea0d"; }

.i-arrow-down::before {
  content: "\ea0e"; }

.i-arrow-forward-sharp::before {
  content: "\ea0f"; }

.i-arrow-forward::before {
  content: "\ea10"; }

.i-arrow-left-2::before {
  content: "\ea11"; }

.i-arrow-left-2204::before {
  content: "\ea12"; }

.i-arrow-left::before {
  content: "\ea13"; }

.i-arrow-right-2::before {
  content: "\ea14"; }

.i-arrow-right-2204::before {
  content: "\ea15"; }

.i-arrow-right::before {
  content: "\ea16"; }

.i-arrow-two-down::before {
  content: "\ea17"; }

.i-arrow-two-left::before {
  content: "\ea18"; }

.i-arrow-two-right::before {
  content: "\ea19"; }

.i-arrow-two-up::before {
  content: "\ea1a"; }

.i-arrow-up-2::before {
  content: "\ea1b"; }

.i-arrow-up-3::before {
  content: "\ea1c"; }

.i-arrow-up-sharp::before {
  content: "\ea1d"; }

.i-arrow-up::before {
  content: "\ea1e"; }

.i-art-tools-2059018::before {
  content: "\ea1f"; }

.i-attach-sharp::before {
  content: "\ea20"; }

.i-attach::before {
  content: "\ea21"; }

.i-attach_money::before {
  content: "\ea22"; }

.i-attachment::before {
  content: "\ea23"; }

.i-award::before {
  content: "\ea24"; }

.i-badge::before {
  content: "\ea25"; }

.i-barcode-qr::before {
  content: "\ea26"; }

.i-beer-outline::before {
  content: "\ea27"; }

.i-briefcase-24::before {
  content: "\ea28"; }

.i-build::before {
  content: "\ea29"; }

.i-bus-outline::before {
  content: "\ea2a"; }

.i-calendar-1585321::before {
  content: "\ea2b"; }

.i-calendar-2204::before {
  content: "\ea2c"; }

.i-calendar-2353171::before {
  content: "\ea2d"; }

.i-calendar-4773076::before {
  content: "\ea2e"; }

.i-calendar-4773332::before {
  content: "\ea2f"; }

.i-calendar-4773339::before {
  content: "\ea30"; }

.i-calendar-60::before {
  content: "\ea31"; }

.i-calendar-check-2204::before {
  content: "\ea32"; }

.i-calendar-sharp::before {
  content: "\ea33"; }

.i-calendar::before {
  content: "\ea34"; }

.i-call-outline::before {
  content: "\ea35"; }

.i-camera-2059070::before {
  content: "\ea36"; }

.i-camera-outline::before {
  content: "\ea37"; }

.i-camera::before {
  content: "\ea38"; }

.i-car-outline::before {
  content: "\ea39"; }

.i-car-sport-outline::before {
  content: "\ea3a"; }

.i-car::before {
  content: "\ea3b"; }

.i-certificate-4773226::before {
  content: "\ea3c"; }

.i-chat-4773344::before {
  content: "\ea3d"; }

.i-chat::before {
  content: "\ea3e"; }

.i-chatbox-ellipses-outline::before {
  content: "\ea3f"; }

.i-chatbox-outline::before {
  content: "\ea40"; }

.i-check-mark::before {
  content: "\ea41"; }

.i-check::before {
  content: "\ea42"; }

.i-checkmark-outline::before {
  content: "\ea43"; }

.i-chevron-back-outline::before {
  content: "\ea44"; }

.i-chevron-forward-outline::before {
  content: "\ea45"; }

.i-chevron-up-outline::before {
  content: "\ea46"; }

.i-clipboard-outline::before {
  content: "\ea47"; }

.i-clock-2059072::before {
  content: "\ea48"; }

.i-clock-2204::before {
  content: "\ea49"; }

.i-clock::before {
  content: "\ea4a"; }

.i-close-2::before {
  content: "\ea4b"; }

.i-close-cross::before {
  content: "\ea4c"; }

.i-close-x::before {
  content: "\ea4d"; }

.i-close::before {
  content: "\ea4e"; }

.i-coffee-1087791::before {
  content: "\ea4f"; }

.i-coffee-1477200::before {
  content: "\ea50"; }

.i-comment-2204::before {
  content: "\ea51"; }

.i-comments-2204::before {
  content: "\ea52"; }

.i-compass-05::before {
  content: "\ea53"; }

.i-compass-2058998::before {
  content: "\ea54"; }

.i-compass-2204::before {
  content: "\ea55"; }

.i-computer-monitor-2059002::before {
  content: "\ea56"; }

.i-cupids-bow-100186::before {
  content: "\ea57"; }

.i-document-4773082::before {
  content: "\ea58"; }

.i-document-attach-outline::before {
  content: "\ea59"; }

.i-document-outline::before {
  content: "\ea5a"; }

.i-document-text-outline::before {
  content: "\ea5b"; }

.i-documents-outline::before {
  content: "\ea5c"; }

.i-download-outline::before {
  content: "\ea5d"; }

.i-email-84::before {
  content: "\ea5e"; }

.i-envelope-2204::before {
  content: "\ea5f"; }

.i-envelope-4773234::before {
  content: "\ea60"; }

.i-error::before {
  content: "\ea62"; }

.i-error_outline::before {
  content: "\ea61"; }

.i-essay-4773091::before {
  content: "\ea63"; }

.i-euro_symbol::before {
  content: "\ea64"; }

.i-ev_station::before {
  content: "\ea65"; }

.i-event-available::before {
  content: "\ea66"; }

.i-event-busy::before {
  content: "\ea67"; }

.i-event-note::before {
  content: "\ea68"; }

.i-expand-more::before {
  content: "\ea69"; }

.i-expand::before {
  content: "\ea6a"; }

.i-eye-19::before {
  content: "\ea6b"; }

.i-face-grin-beam-2204::before {
  content: "\ea6c"; }

.i-face-grin-hearts-2204::before {
  content: "\ea6d"; }

.i-face-grin-stars-2204::before {
  content: "\ea6e"; }

.i-face-smile-2204::before {
  content: "\ea6f"; }

.i-face-smile-beam-2204::before {
  content: "\ea70"; }

.i-facebook::before {
  content: "\ea71"; }

.i-fast-food-outline::before {
  content: "\ea72"; }

.i-favorite::before {
  content: "\ea73"; }

.i-favorite_border::before {
  content: "\ea74"; }

.i-fax::before {
  content: "\ea75"; }

.i-feather-pen-2058983::before {
  content: "\ea76"; }

.i-file-2204::before {
  content: "\ea77"; }

.i-file-4773230::before {
  content: "\ea78"; }

.i-file-4773308::before {
  content: "\ea79"; }

.i-film-outline::before {
  content: "\ea7a"; }

.i-flag-2058985::before {
  content: "\ea7b"; }

.i-flag-2204::before {
  content: "\ea7c"; }

.i-flag-2353178::before {
  content: "\ea7d"; }

.i-flag-points-32::before {
  content: "\ea7e"; }

.i-flame::before {
  content: "\ea7f"; }

.i-flash-2059006::before {
  content: "\ea80"; }

.i-flash::before {
  content: "\ea81"; }

.i-gift-2::before {
  content: "\ea84"; }

.i-glass-2059005::before {
  content: "\ea82"; }

.i-glasses::before {
  content: "\ea83"; }

.i-gps-4773110::before {
  content: "\ea85"; }

.i-hand-peace-2204::before {
  content: "\ea86"; }

.i-hand-point-down-2204::before {
  content: "\ea87"; }

.i-hand-point-left-2204::before {
  content: "\ea88"; }

.i-hand-point-right-2204::before {
  content: "\ea89"; }

.i-hand-point-up-2204::before {
  content: "\ea8a"; }

.i-hand-pointer-2204::before {
  content: "\ea8b"; }

.i-handout::before {
  content: "\ea8c"; }

.i-handshake-2204::before {
  content: "\ea8d"; }

.i-hare-951781::before {
  content: "\ea8e"; }

.i-heart-100178::before {
  content: "\ea8f"; }

.i-heart-2204::before {
  content: "\ea90"; }

.i-home-52::before {
  content: "\ea91"; }

.i-home::before {
  content: "\ea92"; }

.i-ic_alarm_on_48px::before {
  content: "\ea93"; }

.i-ic_phone_48px::before {
  content: "\ea94"; }

.i-ic_print_48px::before {
  content: "\ea95"; }

.i-ice-cream-outline::before {
  content: "\ea96"; }

.i-id-card-2204::before {
  content: "\ea97"; }

.i-image-outline::before {
  content: "\ea98"; }

.i-image::before {
  content: "\ea99"; }

.i-images-outline::before {
  content: "\ea9a"; }

.i-inbox::before {
  content: "\ea9b"; }

.i-info::before {
  content: "\ea9c"; }

.i-instagram::before {
  content: "\ea9d"; }

.i-invitation::before {
  content: "\ea9e"; }

.i-key-25::before {
  content: "\ea9f"; }

.i-key-outline::before {
  content: "\eaa0"; }

.i-kununu::before {
  content: "\eaa1"; }

.i-language::before {
  content: "\eaa2"; }

.i-left::before {
  content: "\eaa3"; }

.i-lemon-2204::before {
  content: "\eaa5"; }

.i-lightbulb-2204::before {
  content: "\eaa4"; }

.i-like-2::before {
  content: "\eaa6"; }

.i-link-2::before {
  content: "\eaa7"; }

.i-link-3::before {
  content: "\eaa8"; }

.i-link-72::before {
  content: "\eaa9"; }

.i-link-sharp::before {
  content: "\eaaa"; }

.i-link::before {
  content: "\eaab"; }

.i-linkedin-2::before {
  content: "\eaac"; }

.i-linkedin::before {
  content: "\eaad"; }

.i-location-2::before {
  content: "\eaaf"; }

.i-location-outline::before {
  content: "\eaae"; }

.i-location-sharp::before {
  content: "\eab0"; }

.i-location::before {
  content: "\eab1"; }

.i-lock-open::before {
  content: "\eab2"; }

.i-lock::before {
  content: "\eab3"; }

.i-locked-heart-100183::before {
  content: "\eab4"; }

.i-logo-pinterest::before {
  content: "\eab5"; }

.i-logo-tumblr::before {
  content: "\eab6"; }

.i-logo-twitch::before {
  content: "\eab7"; }

.i-love-arrow-100181::before {
  content: "\eab8"; }

.i-magic-4153318::before {
  content: "\eab9"; }

.i-mail-2::before {
  content: "\eaba"; }

.i-mail-2059025::before {
  content: "\eabb"; }

.i-mail-open-outline::before {
  content: "\eabc"; }

.i-mail-outline::before {
  content: "\eabd"; }

.i-mail::before {
  content: "\eabe"; }

.i-mailbox-2059027::before {
  content: "\eabf"; }

.i-map-2204::before {
  content: "\eac0"; }

.i-map-outline::before {
  content: "\eac1"; }

.i-markunread::before {
  content: "\eac2"; }

.i-medal-2059010::before {
  content: "\eac3"; }

.i-message-2204::before {
  content: "\eac4"; }

.i-messenger::before {
  content: "\eac5"; }

.i-multiple-11::before {
  content: "\eac6"; }

.i-newspaper-outline::before {
  content: "\eac7"; }

.i-notifications::before {
  content: "\eac8"; }

.i-paper-plane-2204::before {
  content: "\eac9"; }

.i-paper-plane-outline::before {
  content: "\eaca"; }

.i-partly-sunny-outline::before {
  content: "\eacb"; }

.i-pencil::before {
  content: "\eacc"; }

.i-people-outline::before {
  content: "\eacd"; }

.i-people-sharp::before {
  content: "\eace"; }

.i-people::before {
  content: "\eacf"; }

.i-person-outline::before {
  content: "\ead0"; }

.i-person-sharp::before {
  content: "\ead1"; }

.i-person::before {
  content: "\ead2"; }

.i-phone-1150745::before {
  content: "\ead3"; }

.i-phone-1309869::before {
  content: "\ead4"; }

.i-phone-1755632::before {
  content: "\ead5"; }

.i-phone::before {
  content: "\ead6"; }

.i-phone_iphone::before {
  content: "\ead7"; }

.i-photo-2::before {
  content: "\ead8"; }

.i-photo::before {
  content: "\ead9"; }

.i-pizza-outline::before {
  content: "\eada"; }

.i-pizza::before {
  content: "\eadb"; }

.i-play::before {
  content: "\eadc"; }

.i-plus::before {
  content: "\eadd"; }

.i-print-outline::before {
  content: "\eade"; }

.i-print-sharp::before {
  content: "\eadf"; }

.i-print::before {
  content: "\eae0"; }

.i-printer-2059146::before {
  content: "\eae1"; }

.i-rabbit-1613646::before {
  content: "\eae2"; }

.i-rabbit-214995::before {
  content: "\eae3"; }

.i-rabbit-2736281::before {
  content: "\eae4"; }

.i-rabbit-2736297::before {
  content: "\eae5"; }

.i-rabbit-2755596::before {
  content: "\eae6"; }

.i-rabbit-face-2754900::before {
  content: "\eae7"; }

.i-report::before {
  content: "\eae8"; }

.i-report_problem::before {
  content: "\eae9"; }

.i-right::before {
  content: "\eaea"; }

.i-rocket-2059152::before {
  content: "\eaeb"; }

.i-schdule-4777514::before {
  content: "\eaec"; }

.i-schedule-4773322::before {
  content: "\eaed"; }

.i-school-outline::before {
  content: "\eaee"; }

.i-school::before {
  content: "\eaef"; }

.i-search-2::before {
  content: "\eaf0"; }

.i-search-outline::before {
  content: "\eaf1"; }

.i-search-sharp::before {
  content: "\eaf2"; }

.i-search::before {
  content: "\eaf3"; }

.i-send-2::before {
  content: "\eaf4"; }

.i-settings-gear-63::before {
  content: "\eaf5"; }

.i-share-social-outline::before {
  content: "\eaf6"; }

.i-share-social::before {
  content: "\eaf7"; }

.i-shield-checkmark-outline::before {
  content: "\eaf8"; }

.i-shield-checkmark-sharp::before {
  content: "\eaf9"; }

.i-shield-checkmark::before {
  content: "\eafa"; }

.i-shield-icon-01::before {
  content: "\eafb"; }

.i-shield-icon-02::before {
  content: "\eafc"; }

.i-shop-2059161::before {
  content: "\eafd"; }

.i-single-folded-content::before {
  content: "\eafe"; }

.i-stamp-4773104::before {
  content: "\eaff"; }

.i-star-2204::before {
  content: "\eb00"; }

.i-star-outline::before {
  content: "\eb01"; }

.i-star::before {
  content: "\eb02"; }

.i-subway-outline::before {
  content: "\eb03"; }

.i-subway-sharp::before {
  content: "\eb04"; }

.i-subway::before {
  content: "\eb05"; }

.i-tag-2059186::before {
  content: "\eb06"; }

.i-team-4773345::before {
  content: "\eb07"; }

.i-thin-arrow-down::before {
  content: "\eb08"; }

.i-thin-arrow-left::before {
  content: "\eb09"; }

.i-thin-arrow-right::before {
  content: "\eb0a"; }

.i-thin-arrow-up::before {
  content: "\eb0b"; }

.i-thumbs-down-2204::before {
  content: "\eb0c"; }

.i-thumbs-up-2204::before {
  content: "\eb0d"; }

.i-time-outline::before {
  content: "\eb0e"; }

.i-trail-sign-outline::before {
  content: "\eb0f"; }

.i-trophy-4773326::before {
  content: "\eb10"; }

.i-twitter::before {
  content: "\eb11"; }

.i-unfold::before {
  content: "\eb12"; }

.i-user-2204::before {
  content: "\eb13"; }

.i-user-4773090::before {
  content: "\eb14"; }

.i-video-66::before {
  content: "\eb15"; }

.i-video::before {
  content: "\eb16"; }

.i-videocam-2::before {
  content: "\eb17"; }

.i-videocam-outline::before {
  content: "\eb18"; }

.i-videocam-sharp::before {
  content: "\eb19"; }

.i-videocam::before {
  content: "\eb1a"; }

.i-vimeo::before {
  content: "\eb1b"; }

.i-warning::before {
  content: "\eb1c"; }

.i-weekend::before {
  content: "\eb1d"; }

.i-whatsapp::before {
  content: "\eb1e"; }

.i-xing::before {
  content: "\eb1f"; }

.i-youtube::before {
  content: "\eb20"; }

.i-zoom-2::before {
  content: "\eb21"; }

.icon.i-home::before {
  content: "\ea92"; }

@font-face {
  font-family: "font-awesome-5-free";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../fonts/fontawesome/fa-regular-400.eot");
  src: url("../fonts/fontawesome/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../fonts/fontawesome/fa-regular-400.woff2") format("woff2"), url("../fonts/fontawesome/fa-regular-400.woff") format("woff"), url("../fonts/fontawesome/fa-regular-400.ttf") format("truetype"), url("../fonts/fontawesome/fa-regular-400.svg#fontawesome") format("svg"); }

.far:before,
time:before,
.author:before {
  display: inline-block;
  margin-right: 6px;
  font-family: "font-awesome-5-free";
  font-weight: 400; }

.author:before,
.fa-user:before {
  content: "\f007"; }

time:before,
.fa-calendar:before {
  content: "\f133"; }

.fa-calendar-alt:before {
  content: "\f073"; }

/*============= NAVIGATION =============*/
@media (hover: hover) and (pointer: fine) {
  #mainnav-container,
  #mainnav-bg,
  #mainnav-logo,
  #mainnav-logo a,
  #mainnav-logo img,
  #menu-btn:before,
  #menu-btn ul,
  .nav-btn,
  .nav-btn:after,
  .subnav-btn,
  .subnav-btn p:after,
  .tab-button:after,
  .subnav-btn:before,
  .subnav-btn:after,
  .subnav-btn a,
  .nav-btn p:after,
  #editpage-btn,
  .slider-nav,
  .thumbs-btn,
  .thumbs-btn span,
  .logo-label {
    transition: all 350ms ease-IN-OUT; } }

body.modal-on {
  overflow-y: hidden; }

.modal-on #mainnav-container,
.modal-on .scroll-btns.bottom {
  z-index: -1; }

#main .select-wrapper form button:hover span,
.pagination .button.back:hover span:before {
  transform: scale(1.125), rotate(0.01deg);
  transition: all 350ms ease; }

#main-container .button.scroll:after {
  transition: all 250ms ease-in-out; }

#mainnav-container {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 50;
  width: 100%;
  height: var(--menu-height);
  display: block;
  border-top: 0;
  transform: translate3d(0, 0, 0); }

#mainnav-container.no-switch {
  position: absolute;
  transform: translate3d(0, 0, 0); }

#mainnav-container.switch {
  position: fixed;
  transform: translate3d(0, -100%, 0); }

#mainnav-container.switch.active.ani {
  transform: translate3d(0, 0, 0);
  transition: transform 350ms ease-in-out; }

#mainnav-wrapper {
  position: relative;
  width: 100%;
  min-height: var(--menu-height);
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-end; }

#mainnav-wrapper::before,
#mainnav-wrapper::after {
  content: unset; }

#mainnav-bg {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 120%;
  background-color: #fff; }

.career #mainnav-bg {
  display: none; }

#mainnav-container .main-wrapper {
  max-width: var(--max-width-m);
  padding: 0; }

.career #mainnav-container .main-wrapper {
  background: #fff; }

#mainnav-logo {
  position: absolute;
  top: 0;
  left: var(--gap-col);
  z-index: 3;
  width: auto;
  height: 100%;
  display: block; }

@media only screen and (max-width: 1024px) {
  #mainnav-container .main-wrapper {
    padding-left: 5%;
    padding-right: 5%; }
  #mainnav-logo {
    left: 5%; } }

#mainnav-container a {
  text-decoration: none;
  outline: none; }

#mainnav-logo a {
  position: relative;
  top: 50%;
  width: auto;
  height: 90px;
  margin: 0 auto;
  display: block;
  transform: translateY(-50%); }

#main-container #mainnav-logo a:after {
  content: none; }

#mainnav-logo img,
#mainnav-logo .label {
  float: left;
  display: block;
  background: transparent; }

#mainnav-logo img {
  width: auto;
  max-width: none;
  height: 100%;
  margin: auto 0;
  border-radius: 0 !important; }

#mainnav-logo .label {
  margin: -1px 0 0 10px; }

#mainnav-logo .label * {
  margin-bottom: 0; }

#mainnav-logo h4 {
  font-size: calc(20 * var(--em-per-pixels));
  line-height: calc(18 * var(--em-per-pixels)); }

#mainnav-logo p {
  margin-top: 5px;
  font-size: calc(14 * var(--em-per-pixels));
  line-height: calc(18 * var(--em-per-pixels)); }

.mainnav .contact {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  max-width: none; }

.mainnav .contact .inner {
  float: right;
  margin-right: var(--gap-col);
  display: block;
  padding: 2px 5px 5px 5px;
  border-radius: 0 0 10px 10px;
  background-color: var(--color-two); }

.mainnav .contact p {
  float: left;
  height: 20px;
  padding: 0 15px;
  margin-bottom: 0;
  line-height: 20px;
  display: block;
  color: var(--white); }

.mainnav .contact p *,
.mainnav .contact p *::before {
  color: var(--white);
  line-height: 20px; }

.mainnav,
.nav-btn-list,
.nav-tab {
  width: auto;
  display: flex;
  flex-flow: row nowrap;
  column-gap: 1.25rem;
  align-items: center;
  justify-content: center; }

.minimal .mainnav,
.minimal .nav-btn-list,
.minimal .nav-tab {
  width: 100%; }

.mainnav {
  float: right;
  padding: 0 var(--gap-col);
  display: block; }

.nav-btn,
.subnav-btn {
  color: var(--color-one);
  outline: none;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: center; }

.nav-btn {
  position: relative;
  z-index: 4;
  height: var(--menu-height);
  padding: 0;
  color: var(--color-one);
  outline: none; }

.ci .nav-btn {
  height: calc(var(--menu-height) - 1.875rem);
  margin-top: 1.875rem; }

.nav-btn p,
.subnav-btn p {
  position: relative;
  z-index: 1;
  margin-bottom: 0;
  line-height: 1.125em;
  color: var(--color-one);
  font-weight: 400;
  text-decoration: none; }

.nav-btn .cta-btn,
.nav-btn .cta-btn span,
.nav-btn .cta-btn span::before,
.nav-btn p,
.subnav-btn p {
  font-size: 1.125rem;
  font-weight: 400;
  letter-spacing: 0.04em; }

.nav-btn .cta-btn,
.nav-btn .cta-btn span,
.nav-btn p,
.subnav-btn p {
  font-family: var(--font-regular); }

.nav-btn p:after,
#main-container .button.scroll.down::after {
  content: "\ea0e";
  position: absolute;
  left: 50%;
  bottom: 2px;
  width: 20px;
  height: 20px;
  margin-left: -10px;
  font: 20px/20px "superduperfont";
  text-align: center;
  color: var(--color-one);
  background: transparent; }

.nav-btn p:after,
.subnav-btn:after {
  content: "\ea1e";
  bottom: -16px;
  color: var(--color-one);
  opacity: 0; }

.drpdwn-tab:hover .nav-btn p:after,
.drpdwn-tab.tab-on .nav-btn p:after {
  bottom: -20px;
  opacity: 1; }

#main-container .button.scroll:hover:after {
  bottom: -2px; }

.mainnav .active p {
  padding-top: 5px;
  font-family: var(--font-bold);
  color: var(--color-one); }

.firefox .mainnav .active p {
  padding-top: 0; }

.subnav-btn.active p {
  padding-top: 14px; }

#mainnav-cta-btn {
  float: right;
  margin: 5px 10px 5px 0; }

.subnav-wrap {
  position: absolute;
  top: -500%;
  left: 0;
  z-index: -1;
  width: 100%;
  padding: 0;
  margin-top: -5px;
  display: block;
  opacity: 0;
  box-shadow: 0 14px 20px -12px rgba(var(--black-rgb), 0.2);
  transition: opacity 350ms ease;
  border-radius: 0 0 5px 5px;
  overflow: hidden; }

.nav-tab.tab-on .subnav-wrap {
  top: 100%;
  opacity: 1; }

.subnav-wrap:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff; }

.subnav-wrap .page-info {
  position: relative;
  float: left;
  width: 33.3333333333%;
  padding: 40px 20px 40px 40px;
  display: block; }

.subnav-wrap .page-info .headline * {
  color: var(--color-one); }

.subnav-wrap .page-info .abstract {
  margin-bottom: 30px; }

#mainnav-container .subnav-wrap .main-wrapper {
  position: relative;
  z-index: 1;
  float: left;
  width: 66.6666666667%;
  padding: 40px 40px 40px 20px; }

.subnav {
  position: relative;
  z-index: 1;
  float: left;
  width: 50%;
  height: 100%;
  min-height: 180px;
  padding: 0;
  margin-right: 66.6666666667%;
  display: block; }

.subnav .subnav {
  position: absolute;
  top: 0;
  left: 100%;
  width: 100%;
  padding: 0;
  margin-top: 0;
  opacity: 0;
  overflow: visible;
  display: none; }

.subnav-tab:hover .subnav {
  z-index: 2;
  height: auto;
  opacity: 1;
  display: block; }

.subnav-btn p,
.subnav-btn {
  width: 100%;
  display: block; }

.subnav-btn {
  position: relative;
  width: 100%;
  height: 60px;
  padding: 0 20px;
  display: block;
  border-bottom: 1px solid var(--lightgrey); }

.subnav-btn:hover {
  background-color: var(--color-one);
  background-color: var(--lightgrey); }

.subnav-btn:hover .subnav-btn p {
  color: var(--color-one); }

.subnav-btn p {
  padding: 0;
  margin-top: -1px;
  margin-bottom: 0;
  color: var(--color-one); }

.active .subnav-btn p {
  font-family: var(--font-regular); }

.active .subnav-btn.active p {
  font-family: var(--font-bold); }

.tab-button,
.subnav-btn:after {
  position: absolute;
  float: right;
  display: block;
  background: transparent;
  outline: none; }

.tab-button {
  top: 0;
  right: 0;
  width: 45px;
  height: 45px;
  display: none; }

.subnav-btn:after {
  content: "\ea16";
  top: 50%;
  right: -15px;
  width: 45px;
  height: 48px;
  font: 28px/48px superduperfont;
  text-align: center;
  color: var(--color-one);
  opacity: 0;
  transform: translateY(-50%); }

.subnav-parent:hover .subnav-btn:after {
  right: 0;
  opacity: 1; }

.subnav-parent:hover .subnav .subnav-btn:after {
  right: 0;
  opacity: 0; }

.subnav .subnav .subnav-btn {
  position: relative; }

.subnav .subnav .subnav-btn:first-child {
  margin-top: 0; }

.subnav .subnav .subnav-btn:before {
  content: "•";
  content: none;
  position: absolute;
  top: 1px;
  left: 0; }

.subnav-btn * {
  color: var(--color-one); }

.subnav-btn-img {
  display: none; }

.subnav-btn-img img {
  position: absolute;
  visibility: hidden; }

.mod-02 .mainnav li {
  position: relative; }

.mod-02 .subnav-wrap {
  left: 50%;
  width: auto;
  min-width: 300px;
  margin-top: 0;
  min-height: 0 !important;
  transform: translateX(-50%); }

@media only screen and (max-width: 1800px) {
  .mod-02 .nav-tab.drpdwn-tab:last-child .subnav-wrap {
    left: auto;
    right: 0;
    transform: none; } }

.mod-02 li:hover .subnav-wrap {
  top: 100%;
  opacity: 1; }

#mainnav-container.mod-02 .subnav-wrap .main-wrapper {
  width: 100%;
  padding: 0; }

.mod-02 .subnav {
  width: 100%;
  height: auto !important;
  min-height: 0; }

.mod-02 .subnav-btn p {
  height: auto;
  padding: calc(10 * var(--rem-per-pixels)) 0;
  line-height: calc(20 * var(--rem-per-pixels)); }

/*============= MENU-BTN =============*/
#mainnav-container #menu-btn {
  position: absolute;
  top: 10px;
  right: 5%;
  z-index: 4;
  width: 60px;
  height: 60px;
  padding: 0 !important;
  border: none;
  display: none;
  cursor: pointer;
  overflow: visible !important; }

#mainnav-container #menu-btn,
#mainnav-container #menu-btn:after {
  background-image: none;
  background-color: var(--grey);
  border-radius: 50%; }

#mainnav-container #menu-btn span:before {
  content: none; }

#menu-btn ul,
#menu-btn span {
  float: left;
  margin-bottom: 0;
  display: block; }

#menu-btn .label {
  margin-right: 10px; }

#menu-btn:before {
  position: absolute;
  top: 0;
  right: 100%;
  content: "Menü";
  margin-right: 10px;
  font-family: var(--font-bold);
  line-height: 62px;
  color: var(--grey);
  letter-spacing: 0.04em;
  text-transform: none;
  white-space: nowrap; }

#menu-btn.active:before {
  content: "Menü schließen";
  opacity: 1; }

#menu-btn ul {
  position: relative;
  top: 15px;
  left: 10px;
  width: 40px;
  height: 28px; }

#menu-btn ul {
  transform: scale(0.8) rotate(0deg); }

#menu-btn:hover ul {
  transform: scale(0.9) rotate(0.01deg); }

#menu-btn li {
  position: absolute;
  width: 40px;
  height: 4px;
  display: block;
  border: none;
  background-color: #fff;
  overflow: hidden;
  border-radius: 2px; }

#menu-btn li.one {
  top: 0; }

#menu-btn li.two,
#menu-btn.active li.one {
  top: 50%;
  margin-top: -2px; }

#menu-btn.active li.two {
  opacity: 0; }

#menu-btn li.three {
  bottom: 0; }

#menu-btn.active li.three {
  bottom: 50%;
  margin-bottom: -2px; }

#menu-btn.active li.one {
  transform: rotate(-45deg); }

#menu-btn.active li.three {
  transform: rotate(45deg); }

/*============= MINIMAL NAV =============*/
:root :has(#mainnav-container.minimal) {
  --menu-height: 80px; }

/*============= NAV MEDIA QUERIES =============*/
@media only screen and (max-width: 1600px) {
  .nav-btn .cta-btn,
  .nav-btn .cta-btn span,
  .nav-btn .cta-btn span::before,
  .nav-btn p,
  .subnav-btn p {
    font-size: 1rem; }
  .nav-btn p,
  .subnav-btn p {
    line-height: 1.125em; } }

@media only screen and (max-width: 90rem) {
  body:has(#mainnav-container.minimal) #main-container {
    padding-top: unset; }
  body:has(#mainnav-container.minimal) main {
    padding-top: var(--gap-row);
    border-top-width: 3.75rem; }
  #mainnav-container,
  #mainnav-container.no-switch {
    position: fixed; }
  #mainnav-bg {
    background-color: #fff;
    background-color: rgba(var(--white-rgb), 0.98);
    background-image: none; }
  .career #mainnav-bg {
    display: block; }
  #mainnav-logo {
    z-index: 4; }
  #mainnav-logo a {
    top: auto;
    height: 60px;
    margin: 10px auto;
    transform: unset; }
  .mainnav .contact {
    position: absolute;
    top: 80px;
    height: 30px;
    padding-top: 5px;
    padding-bottom: 5px;
    background-color: var(--color-two); }
  .mainnav .contact .inner {
    position: relative;
    left: 50%;
    float: none;
    padding: 0;
    margin: 0 auto;
    display: inline-block;
    transform: translateX(-50%); }
  .mainnav .contact a,
  .mainnav .contact *:before,
  .mainnav .contact * {
    color: #fff !important;
    appearance: none; }
  .mainnav {
    position: absolute;
    top: 0;
    left: 100%;
    z-index: 3;
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0;
    font-size: 1.125rem;
    background-image: linear-gradient(to bottom, rgba(var(--white-rgb), 1) 25%, rgba(var(--white-rgb), 0.92));
    opacity: 0;
    transition: opacity 500ms ease-in-out; }
  .minimal .mainnav {
    position: relative;
    left: 0;
    opacity: 1; }
  .mainnav.active {
    left: 0;
    opacity: 1; }
  .nav-btn-list,
  .nav-tab {
    width: 100%; }
  .subnav-tab,
  .subnav-btn {
    width: 100%;
    display: block; }
  .nav-btn-list {
    position: absolute;
    top: var(--menu-height);
    left: 0;
    width: 100%;
    max-width: none;
    height: auto;
    margin: 0;
    flex-flow: column nowrap;
    border-top: 1px solid var(--lightgrey);
    border-bottom: 1px solid var(--lightgrey);
    background-color: #fff; }
  .nav-tab {
    width: 100%;
    flex-flow: column nowrap; }
  .mod-02 .nav-tab {
    grid-column: span 3; }
  .nav-btn {
    float: left;
    position: relative;
    top: auto;
    left: auto;
    padding: 0 8px;
    margin-top: -1px;
    width: 100%;
    border-top: 1px solid var(--lightgrey);
    border-bottom: 1px solid var(--lightgrey);
    border-top: unset;
    border-bottom: unset; }
  .nav-tab:first-child .nav-btn {
    border-top: none; }
  .subnav-wrap {
    top: 0;
    left: auto;
    right: 0;
    width: 66.6666666667%;
    height: 100%;
    margin: 0;
    display: none;
    opacity: 1;
    box-shadow: none; }
  .subnav-wrap:before {
    content: none; }
  .nav-tab:hover .subnav-wrap {
    top: 0;
    z-index: 4;
    display: block; }
  .subnav-wrap .page-info {
    display: none; }
  .subnav-wrap .main-wrapper {
    position: static;
    width: 100%;
    max-width: none;
    padding: 0; }
  .subnav {
    position: absolute;
    top: 0;
    left: -50%;
    width: 50%;
    height: 100% !important;
    display: block;
    opacity: 0; }
  .subnav.lvl-1 {
    border-right: 1px solid var(--lightgrey); }
  .subnav.lvl-2 {
    margin-left: 1px; }
  .subnav.lvl-1:hover {
    background-color: rgba(var(--white-rgb), 1); }
  .subnav.lvl-1:hover .subnav.lvl-2 {
    background-color: rgba(var(--white-rgb), 0); }
  .subnav.lvl-1:hover .subnav.lvl-2:hover {
    background-color: rgba(var(--white-rgb), 1); }
  .subnav .subnav {
    left: -100%;
    width: 100%; }
  .nav-tab:hover .subnav.lvl-1 {
    left: 0;
    opacity: 1; }
  .subnav-tab:hover .subnav {
    left: 100%;
    opacity: 1; }
  .nav-btn,
  .ci .nav-btn,
  .subnav-btn {
    height: 60px;
    width: 33.3333333333%;
    min-height: 0;
    margin: 0;
    padding: 0 5%; }
  .nav-tab:has(.subnav) :is(.nav-btn, .ci .nav-btn, .subnav-btn) {
    justify-content: flex-start;
    border-right: 1px solid var(--lightgrey); }
  .subnav-btn {
    float: none;
    width: 100%;
    margin-top: -1px;
    border-top: 1px solid var(--lightgrey);
    border-bottom: 1px solid var(--lightgrey); }
  .subnav-tab:first-child .subnav-btn {
    border-top: none; }
  .nav-btn p,
  .subnav-btn p {
    height: auto;
    padding: 0;
    margin: 0;
    line-height: 22px; }
  .subnav-btn p {
    padding-right: 30px; }
  .nav-btn p:after,
  .subnav-btn p:after,
  .subnav .subnav .subnav-btn:after {
    content: none; }
  .drpdwn-tab .nav-btn:after,
  .subnav-btn:after {
    content: "\ea16";
    position: absolute;
    top: 0;
    bottom: auto;
    right: 15px;
    width: 44px;
    height: 60px;
    margin-left: 0;
    font: 34px/60px "superduperfont";
    color: var(--color-one);
    opacity: 0; }
  .subnav-btn:after {
    top: 50%;
    right: 15px;
    transform: translateY(-50%); }
  .drpdwn-tab:hover .nav-btn:after {
    right: 0;
    opacity: 1; }
  .subnav-parent:hover .subnav-btn:after {
    right: 0;
    opacity: 1; }
  .tab-button:after {
    width: 34px;
    height: 60px;
    font: 34px/60px superduperfont; }
  #mainnav-container #menu-btn {
    display: block; }
  .mod-02 .mainnav li {
    position: static; }
  .mod-02 .mainnav li:hover .subnav-wrap {
    top: 0; }
  .mod-02 .mainnav .subnav-wrap {
    top: 0;
    left: auto;
    right: -25%;
    z-index: 2;
    width: 50%;
    min-width: 0; }
  .mod-02 .mainnav .nav-tab.drpdwn-tab:last-child .subnav-wrap {
    right: 0; }
  .mod-02 .mainnav .subnav-wrap .main-wrapper,
  .mod-02 .mainnav .subnav-wrap .subnav.lvl-1 {
    position: relative;
    width: 100%;
    padding: 0;
    margin: 0;
    display: block; }
  .subnav-tab:last-child .subnav-btn {
    border-radius: 0; }
  #mainnav-container.minimal {
    height: auto; }
  .minimal :is(.mainnav, .nav-btn-list, .nav-btn) {
    position: relative;
    top: auto;
    border: unset;
    transform: unset;
    overflow: auto; }
  .minimal :is(#mainnav-wrapper, .mainnav, .nav-btn-list) {
    height: auto;
    min-height: unset;
    flex-flow: row wrap; }
  .minimal :is(.nav-tab, .nav-btn, .subnav-btn) {
    width: auto;
    padding: 0; } }

@media only screen and (max-width: 960px) {
  body:has(#mainnav-container.minimal) main {
    padding-top: 0;
    border-top: unset; }
  #mainnav-container.minimal {
    position: relative;
    height: auto;
    padding-bottom: var(--gap-row); }
  .mainnav .contact {
    position: relative;
    top: 0;
    height: auto;
    padding-top: 5px;
    padding-bottom: 5px; }
  .mainnav .contact .inner {
    left: 0;
    display: block;
    transform: none; }
  .mainnav .contact .inner p {
    float: none;
    height: auto;
    text-align: center;
    line-height: 24px;
    display: block; }
  .mainnav {
    top: 0;
    height: 100vh;
    border-top: var(--menu-height) solid #fff;
    overflow-y: scroll; }
  .nav-btn-list {
    position: absolute;
    top: 50%;
    width: 100%;
    transform: translateY(-50%); }
  .minimal .nav-btn-list {
    width: auto; }
  .nav-btn {
    position: relative;
    z-index: 1;
    width: 100%;
    border-right: none; }
  .minimal .nav-btn {
    width: auto; }
  .drpdwn-tab .nav-btn:after,
  .subnav-btn p {
    content: none; }
  .subnav-btn:after {
    content: none; }
  .tab-button,
  .nav-btn .tab-button,
  .tab-button:after {
    display: block;
    opacity: 1; }
  .tab-button {
    right: 5%;
    z-index: 2;
    width: 60px;
    height: 60px;
    padding: 0;
    border-left: 1px solid var(--lightgrey);
    border-right: 1px solid var(--lightgrey);
    cursor: pointer; }
  .tab-button:before,
  .tab-button:after,
  .tab-button:hover:before,
  .tab-button:hover:after {
    content: "";
    position: absolute;
    padding: 0;
    display: block;
    background-color: var(--color-one);
    border-radius: 1px; }
  .tab-button:before {
    top: 28px;
    left: 19px;
    width: 20px;
    height: 2px; }
  .tab-button:after {
    top: 19px;
    left: 28px;
    width: 2px;
    height: 20px; }
  .tab-button.on:after {
    top: 30px;
    height: 0; }
  .nav-btn-list,
  .nav-tab,
  .subnav-tab,
  .subnav-wrap,
  .subnav,
  .subnav .subnav {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    width: 100%;
    height: auto;
    min-height: 0;
    margin: 0;
    display: block;
    background: transparent;
    opacity: 1 !important;
    transform: translateY(0); }
  .mainnav :is(.nav-btn-list, .nav-tab) {
    flex-flow: column nowrap;
    display: flex; }
  .subnav,
  .subnav .subnav {
    float: none;
    width: 90%;
    height: 0;
    margin: 0 5%;
    border: 1px solid var(--lightgrey);
    border-bottom: none;
    background: transparent !important;
    opacity: 1;
    overflow: hidden; }
  .subnav.lvl-1 {
    margin-top: -1px; }
  .subnav {
    height: 0 !important;
    font-size: 16px;
    overflow: hidden; }
  .subnav.on {
    height: auto; }
  .subnav .subnav {
    border-top: none;
    /*font-size: 14px;*/ }
  .subnav.on .subnav {
    height: 0 !important; }
  .subnav.on,
  .subnav.on .subnav.on {
    height: auto !important; }
  .mod-02 .subnav-wrap {
    width: 100%; }
  .mod-02 .nav-btn {
    width: 100%; }
  .mod-02 .subnav {
    border-top: none; }
  .subnav {
    opacity: 0 !important; }
  .subnav.on {
    opacity: 1 !important; }
  .mod-02 li .subnav-wrap {
    padding: 0 5%; }
  #mainnav-container.switch.minimal {
    transform: unset; }
  .minimal :is(.nav-btn-list, .nav-tab) {
    width: 100%;
    flex-flow: column nowrap; } }

@media only screen and (max-width: 720px) {
  .subnav,
  .subnav .subnav {
    width: 95%;
    margin: 0 2.5% -1px 2.5%; }
  .subnav .subnav {
    font-size: 16px; }
  .nav-btn,
  .subnav-btn {
    padding: 0 2.5%; }
  .nav-btn p,
  .subnav-btn p {
    font-size: 16px;
    line-height: 20px; }
  .mainnav .subnav-btn p {
    max-width: 270px;
    margin-right: 0;
    padding-right: 0; }
  #menu-btn:before,
  #menu-btn.active:before {
    content: none; }
  .tab-button {
    right: 2.5%; }
  .subnav-tab .tab-button {
    right: 0;
    margin-right: -1px; } }

/*============= SCROLL-BTN =============*/
.scroll-btns {
  width: 100%;
  height: 0;
  display: block; }

.scroll-btns.bottom {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 0; }

.scroll-btns .btn-wrapper {
  position: relative;
  width: 100%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 0.625rem;
  row-gap: 0.625rem;
  padding: 0 var(--gap-col); }

.scroll-btns .col {
  width: 100%;
  grid-column: span 1;
  display: flex;
  flex-flow: row wrap; }

.scroll-btns .col {
  justify-content: center; }

.scroll-btns .col:last-child {
  justify-content: flex-end; }

.scroll-btns .col:first-child {
  justify-content: flex-start; }

.scroll-btns .button.scroll {
  min-height: 2.75rem;
  padding: 0.3125rem 1.25rem !important;
  transform: translateY(-100%); }

.scroll-btns .button.scroll,
.scroll-btns .button.scroll span {
  width: auto;
  height: auto;
  line-height: 1.375em;
  display: block; }

.scroll-btns .button.scroll span {
  position: relative;
  top: 50%;
  padding: 0;
  transform: translateY(-50%); }

.scroll-btns .button.scroll span::before {
  content: none; }

.button.scroll,
.button.scroll:before {
  transition: all 350ms ease-in-out; }

.scroll-btns .button.scroll.bottom,
.scroll-btns .button.scroll.bottom::after,
.scroll-btns .button.scroll.top,
.scroll-btns .button.scroll.top::after {
  color: var(--color-one);
  background: rgba(var(--white-rgb), 0.92); }

.scroll-btns.top .button.scroll,
.scroll-btns.top .button.scroll::after {
  border-radius: 0 0 22px 22px; }

.scroll-btns.bottom .button.scroll,
.scroll-btns.bottom .button.scroll::after {
  --color-txt: var(--color-one);
  border-radius: 22px 22px 0 0; }

.scroll-btns .button.scroll.top *,
.scroll-btns .button.scroll.down * {
  font-family: var(--font-bold);
  font-weight: 600;
  text-transform: uppercase;
  --color-txt: var(--color-one); }

.scroll-btns .button.scroll.top span::before,
.scroll-btns .button.scroll.down span::before {
  content: "\ea46";
  position: relative;
  top: auto;
  left: auto;
  height: 0.625rem;
  line-height: 0.625rem;
  display: block;
  opacity: 1;
  color: var(--color-one);
  font-weight: 400; }

.scroll-btns .button.scroll.down span::before {
  transform: rotate(-180deg); }

.section-heroslider .btn-wrapper {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 2;
  width: 25%;
  padding-left: 0; }

.no-img #pageheader .btn-wrapper {
  display: none; }

@keyframes bg-pulse {
  0% {
    opacity: 1;
    transform: scale(1); }
  15% {
    opacity: 1; }
  100% {
    opacity: 0;
    transform: scale(1.75); } }

/*@-webkit-keyframes bg-pulse { from { opacity: 1; } to { opacity: 0; }  }
   @-moz-keyframes bg-pulse { from { opacity: 1; } to { opacity: 0; }  }
     @-o-keyframes bg-pulse { from { opacity: 1; } to { opacity: 0; }  }
        @keyframes bg-pulse { from { opacity: 1; } to { opacity: 0; }  }*/
@keyframes scroll-wheel {
  0% {
    top: 10px;
    opacity: 0; }
  25% {
    opacity: 1; }
  75% {
    opacity: 1; }
  100% {
    top: 38px;
    opacity: 0; } }

@media only screen and (max-width: 1600px) {
  .scroll-btn-down {
    height: auto; }
  .scroll-btns.top .btn-wrapper,
  .scroll-btns.bottom .btn-wrapper {
    max-width: none;
    padding: 0; }
  .scroll-btns.top .col:last-child .button.scroll {
    border-radius: 0 0 0 22px; }
  .scroll-btns.bottom .col:last-child .button.scroll.top {
    border-radius: 22px 0 0 0; } }

@media only screen and (max-width: 1024px) {
  #pageheader .scroll-btns.top,
  .section-heroslider .scroll-btns.top {
    display: none; } }

/*============= PAGINATION =============*/
.section-pagination,
.section-pagination:first-child,
.section-pagination:last-child {
  position: relative;
  z-index: 1;
  padding-top: 0;
  padding-bottom: 0; }

.section-pagination:last-child {
  padding-bottom: 40px; }

.pagination {
  float: left;
  width: 100%;
  display: block;
  background-image: linear-gradient(to right, rgba(var(--color-two-rgb), 1), rgba(var(--color-one-rgb), 1) 50%, rgba(var(--color-two-rgb), 1));
  border-radius: 40px; }

.pagination .button {
  float: left;
  position: relative;
  width: 33.3333333333%;
  height: 80px;
  line-height: 76px;
  display: block;
  background: transparent;
  border: none;
  border-left: none;
  border-radius: 0; }

.pagination .button span {
  line-height: calc(18 * var(--em-per-pixels)); }

.pagination .button * {
  margin-bottom: 0;
  text-align: center; }

.pagination .button:after,
.pagination .button.next:before {
  content: none; }

.pagination .button.back {
  padding: 0 40px;
  border: 1px solid #fff;
  border-top: none;
  border-bottom: none; }

.pagination .button p {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: table; }

.pagination .button span {
  top: 2px;
  padding: 0 70px;
  display: table-cell;
  vertical-align: middle; }

.pagination .button.prev span:before,
.pagination .button.next span:before,
.pagination .button.back span:before {
  top: -2px;
  left: auto;
  right: auto;
  width: 80px;
  height: 80px;
  font: 38px/80px superduperfont;
  opacity: 1; }

.pagination .button.back span:before {
  left: 10px; }

.pagination .button.prev span:before {
  left: 0; }

.pagination .button.next span:before {
  left: auto;
  right: 0; }

.pagination .button.prev:hover span:before {
  right: auto;
  left: -10px !important; }

.pagination .button.next:hover span:before {
  left: auto;
  right: -10px !important; }

@media only screen and (max-width: 1280px) {
  .section-pagination,
  .section-pagination:first-child {
    padding: 20px 0; }
  .section-pagination:last-child {
    padding: 20px 0 0 0; }
  .section-pagination .main-wrapper {
    padding: 0 20px; }
  .section-pagination .pagination.numbers {
    padding: 20px 5%; }
  .section-pagination .main-wrapper {
    padding: 0;
    border-top: none; }
  .pagination {
    border-radius: 0; }
  .pagination .button {
    font-size: calc(18 * var(--em-per-pixels)); }
  .pagination .button span {
    padding: 0 20px; }
  .pagination .button.back span {
    padding: 0 40px; }
  .pagination .button.prev span {
    padding-left: 60px;
    text-align: right; }
  .pagination .button.next span {
    padding-right: 60px;
    text-align: left; }
  .pagination .button.prev span:before,
  .pagination .button.next span:before,
  .pagination .button.back span:before {
    width: 50px; } }

@media only screen and (max-width: 960px) {
  .section-pagination,
  .section-pagination:first-child,
  .section-pagination:last-child {
    margin-top: -2px;
    border-top: none; }
  .section-pagination:last-child {
    padding-bottom: 0; }
  .pagination {
    font-size: 14px;
    background-image: linear-gradient(to right, rgba(var(--color-one-rgb), 1) 25%, rgba(var(--color-two-rgb), 1)); }
  .pagination .button {
    width: 100%; }
  .pagination .button:hover {
    padding: 0 !important; }
  .pagination .button.prev,
  .pagination .button.back,
  .pagination .button.next {
    height: 60px;
    padding: 0;
    border: none;
    border-top: 1px solid #fff; }
  .pagination .button.prev {
    border-top: none; }
  .pagination .button p {
    position: relative;
    height: 60px;
    max-width: 640px;
    margin: 0 auto; }
  .pagination .button.prev span,
  .pagination .button.next span,
  .pagination .button.back span {
    padding: 0 5% 0 60px;
    text-align: left; }
  .pagination .button.prev span:before,
  .pagination .button.next span:before,
  .pagination .button.back span:before {
    left: 0;
    width: 60px;
    height: 60px;
    font: 35px/60px superduperfont;
    text-align: center; }
  .pagination .button.prev:hover span:before,
  .pagination .button.next:hover span:before,
  .pagination .button.back:hover span:before {
    left: 0 !important; } }

@media only screen and (max-width: 480px) {
  .pagination .button {
    border-right: 1px solid #fff; } }

/*============= PAGINATION =============*/
#main .pagination.numbers {
  background: transparent; }

.pagination.numbers li {
  float: left;
  display: block; }

.pagination.numbers li:first-child {
  margin-left: 0; }

.pagination.numbers .button,
.pagination.numbers .button span {
  color: var(--color-one) !important; }

.pagination.numbers .button span::before {
  content: "\ea1e";
  content: none;
  width: 100%;
  top: auto;
  bottom: 0;
  left: 0;
  opacity: 1; }

.pagination.numbers .button {
  width: 50px;
  height: 50px;
  margin-left: 5px;
  padding: 0 !important;
  text-align: center;
  border: 1px solid var(--lightgrey);
  border-radius: 25px; }

.pagination.numbers .button span {
  width: 100%;
  padding: 0 !important;
  display: block;
  font-size: calc(24 * var(--rem-per-pixels));
  line-height: 50px; }

.pagination.numbers .button:hover {
  background-color: var(--color-one); }

.pagination.numbers .button:hover * {
  color: #fff !important; }

.pagination.numbers .button.active {
  background-color: var(--color-one); }

.pagination.numbers .button.active * {
  color: #fff !important; }

#main .pagination.numbers .prev .button,
#main .pagination.numbers .next .button {
  width: auto;
  padding: 0 20px !important; }

#main-container .pagination.numbers .button::after {
  opacity: 0; }

#main-container .pagination.numbers .button:hover::after,
#main-container .pagination.numbers .MarkupPagerNavOn .button::after {
  opacity: 1; }

.pagination.numbers .MarkupPagerNav {
  float: left;
  position: relative;
  left: 50%;
  display: block;
  transform: translateX(-50%); }

@media only screen and (max-width: 768px) {
  .pagination.numbers .MarkupPagerNav {
    left: auto;
    transform: none; }
  .pagination.numbers .button {
    width: 30px;
    height: 30px;
    border-radius: 15px; }
  .pagination.numbers .button span {
    font-size: calc(16 * var(--rem-per-pixels));
    line-height: 28px; } }

/*========= BREADCRUMPS =========*/
.img #breadcrumb-wrapper {
  position: absolute;
  width: 100%;
  height: 0;
  bottom: 0;
  height: auto;
  height: auto; }

.breadcrumps {
  position: relative;
  z-index: 11;
  float: left;
  width: 75%;
  height: auto;
  padding: calc(var(--gap-row) / 2) calc(var(--gap-col) / 2) calc(var(--gap-row) / 2) 20px;
  display: block; }

.breadcrumps li {
  float: left;
  display: block;
  font-family: var(--font-regular);
  line-height: 20px;
  letter-spacing: 0.08em;
  text-transform: uppercase; }

.breadcrumps li:before {
  position: relative;
  top: 1px;
  content: "/";
  content: "›";
  float: left;
  margin: 0 8px;
  display: block;
  font-family: var(--font-regular);
  font-size: 24px;
  line-height: 13px;
  color: var(--color-txt); }

.img .breadcrumps li:before {
  color: #fff; }

.breadcrumps li:first-child:before {
  content: none; }

.breadcrumps a {
  position: relative;
  float: left;
  display: block;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: normal;
  color: var(--color-one);
  text-decoration: none;
  border: none; }

.breadcrumps * {
  color: var(--color-txt); }

.breadcrumps a.active {
  font-weight: 700;
  font-family: var(--font-bold);
  line-height: 24px; }

.firefox .breadcrumps a.active {
  line-height: 20px; }

.breadcrumps a,
.breadcrumps a:before,
.breadcrumps a:after {
  transition: all 350ms var(--cubic-bezier); }

#main .breadcrumps a:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background-color: var(--darkgrey); }

.breadcrumps li:first-child a span {
  position: relative;
  float: left;
  width: 20px;
  height: 20px;
  margin-top: -1px;
  margin-right: 0;
  margin-left: -20px;
  display: block;
  font-size: 0; }

.breadcrumps li:first-child a span:before {
  content: "\ea92";
  position: absolute;
  left: 0;
  top: 0;
  width: 20px;
  height: 20px;
  font: 18px/20px superduperfont; }

.breadcrumps a:before {
  position: relative;
  float: left;
  width: 30px;
  display: block; }

.breadcrumps a.active:after,
.breadcrumps a:hover:after {
  width: 100%; }

.breadcrumps li:first-child a span:hover {
  font-size: 0; }

@media only screen and (min-width: 1281px) {
  .img #breadcrumb-wrapper {
    --color-txt: #fff; } }

@media only screen and (max-width: 1280px) {
  .img #breadcrumb-wrapper {
    /*height: auto;*/
    position: relative;
    bottom: auto;
    border-bottom: 1px solid var(--lightgrey); }
  .img #breadcrumb-wrapper *,
  .img #breadcrumb-wrapper .breadcrumps li:before {
    color: inherit; }
  .img #breadcrumb-wrapper .breadcrumps {
    height: auto; }
  .breadcrumps {
    width: 100%;
    padding-right: 0;
    padding: 20px 0 15px 20px; } }

@media only screen and (max-width: 1023px) {
  #breadcrumb-wrapper {
    height: auto;
    padding: 0;
    border-bottom: none;
    display: none; }
  .breadcrumps {
    padding: 0 0 20px 20px; }
  /*#main #breadcrumb-wrapper *,
    #main .breadcrumps li:before { color: var(--color-txt); }*/ }

@media only screen and (max-width: 767px) {
  #main #breadcrumb-wrapper {
    display: none; } }

/*========= CATEGORY NAV =========*/
.section-options {
  padding: 0 0 0 0 !important; }

.career #main .section-options {
  padding-top: 40px !important; }

.lt-ie10 .section-options {
  display: none; }

.select-nav-cont {
  position: relative;
  width: 100%;
  float: left;
  display: block;
  border-radius: 0 0 6px 6px;
  overflow: hidden; }

.select-nav-cont nav {
  border-top: 1px solid var(--lightgrey); }

#nav-opt {
  padding: 0; }

.section-options .section-header {
  padding: 20px 40px;
  margin-top: -81px;
  background-color: #fff;
  border-bottom: 0;
  border-radius: 22px 22px 0 0; }

@media only screen and (max-width: 1152px) {
  .section-options .section-header {
    margin-top: -68px; } }

#nav-cats {
  position: relative;
  width: 100%;
  height: auto;
  background-color: #fff;
  overflow: hidden; }

.select-nav {
  background-color: #fff; }

.select-nav.vac {
  background-color: var(--lightgrey); }

.select-nav .inner {
  float: left;
  position: relative;
  width: 100%;
  display: block; }

.select-nav.vac .inner {
  margin-top: 40px;
  background-color: #fff;
  border: 1px solid var(--lightgrey);
  border-top: none;
  border-bottom: none;
  border-radius: 6px;
  overflow: hidden; }

@media only screen and (max-width: 640px) {
  .career #main .section-options {
    padding-top: 0 !important; }
  /*.select-nav.vac .inner { margin-top: 0; }*/ }

.select-nav .inner:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 1px;
  height: 100%;
  background-color: var(--lightgrey); }

#nav-cats .inner:after,
.select-nav.vac .inner:after {
  content: none; }

#nav-cats:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 1px;
  height: 100%;
  background-color: var(--lightgrey); }

.select-wrapper {
  position: relative;
  float: left;
  width: 50%;
  padding: 15px 40px 20px 40px;
  display: block; }

.select-wrapper:first-child {
  border-left: none; }

#nav-cats .select-wrapper header:before {
  content: "";
  position: absolute;
  left: -42px;
  top: -7px;
  width: 44px;
  height: 44px;
  background-size: 15px auto;
  background-repeat: no-repeat;
  background-position: center; }

#nav-cats .select-wrapper.erw header:before {
  background-image: url("..img/map-icons/loc-icon-b.svg"); }

#nav-cats .select-wrapper.kin header:before {
  background-image: url("..img/map-icons/loc-icon-g.svg"); }

.select-wrapper .wrapper-xxs {
  padding: 0; }

.select {
  float: left;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  display: block; }

.select.min {
  height: 50px; }

.select.min.focus {
  z-index: 5; }

.select.min:after {
  content: "\ea0e";
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  width: 50px;
  height: 50px;
  font: 22px/50px "superduperfont";
  font-weight: 700;
  text-align: center; }

.select.min.focus:after {
  content: "\ea1e"; }

.select.min .options {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50px;
  padding-top: 50px;
  display: block;
  border: 1px solid var(--color-txt);
  border-radius: 3px;
  background-color: #fff;
  overflow: hidden; }

.select.min.focus .options {
  height: 300px;
  overflow-y: scroll; }

.select.min.focus .options.opts-1,
.select.min.focus .options.opts-2,
.select.min.focus .options.opts-3,
.select.min.focus .options.opts-4 {
  overflow-y: hidden; }

.select.min.focus .options.opts-1 {
  height: 100px; }

.select.min.focus .options.opts-2 {
  height: 150px; }

.select.min.focus .options.opts-3 {
  height: 200px; }

.select.min.focus .options.opts-4 {
  height: 250px; }

.select.min.focus .options.opt-links.opts-1 {
  height: 50px; }

.select.min.focus .options.opt-links.opts-2 {
  height: 100px; }

.select.min.focus .options.opt-links.opts-3 {
  height: 150px; }

.select.min.focus .options.opt-links.opts-4 {
  height: 200px; }

#dm-btn-wrapper,
#dm-btn-label {
  float: left;
  width: 100%; }

#dm-btn-wrapper {
  margin-bottom: 20px; }

#dm-btn-wrapper .wrapper-xxs {
  padding: 0; }

#dm-btn-label {
  margin-bottom: 5px;
  color: var(--color-txt); }

@media only screen and (max-width: 960px) {
  #nav-distance .select-wrapper {
    width: 100%; }
  #nav-distance label {
    height: auto;
    text-align: center; }
  #dm-btn-label {
    height: auto;
    margin-bottom: 5px; } }

.select-wrapper header {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: 0 0 5px 0; }

#dist-radius-label span {
  float: none;
  font-family: var(--font-bold); }

.select-wrapper header * {
  margin-bottom: 0; }

.erw header * {
  color: var(--color-one); }

.kin header * {
  color: var(--color-two); }

.subcat-select {
  width: 100%;
  display: block; }

.select .button,
.select .button:after,
.select .button * {
  width: 100%;
  display: block;
  color: var(--color-txt);
  text-align: left;
  border: none;
  border-radius: 0;
  background: transparent; }

.select .button,
.select .button:hover {
  height: 50px;
  padding: 0 !important;
  line-height: 55px; }

.select .opt-btn {
  margin-top: -1px;
  font-size: 14px;
  line-height: 20px;
  display: none;
  text-transform: none;
  letter-spacing: normal;
  border-top: 1px solid var(--color-txt); }

.select .opt-btn:hover {
  line-height: 20px;
  background-color: var(--lightgrey); }

.select .opt-btn,
.select .opt-btn.active,
.select.focus .opt-btn.active {
  position: absolute;
  top: 0;
  left: 0; }

.select .opt-btn.active {
  display: block; }

.select .opt-btn.out {
  display: none !important; }

.select.focus .opt-btn {
  position: relative;
  display: block; }

.select .opt-btn span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  /*height: 100%;*/
  padding: 0 60px 0 10px;
  display: block;
  transform: translate(-50%, -50%); }

.select .button span:before,
.select .button:hover span:before {
  content: none; }

.button.check,
.button.check:hover {
  width: 100%;
  height: 44px;
  margin: 0;
  font-family: var(--font-regular) !important;
  line-height: 20px;
  text-indent: -2px;
  border-radius: 0;
  background: transparent; }

.button.check span:before,
.button.check:hover span:before,
.button.check span:after,
.button.check:hover span:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -45px;
  width: 24px;
  height: 24px;
  margin-top: -12px; }

.button.check span:before,
.button.check:hover span:before {
  border: 1px solid var(--color-txt);
  border-radius: 5px;
  opacity: 1; }

.button.check span:after,
.button.check:hover span:after {
  font: 28px/24px superduperfont;
  /*text-indent: -2px;*/
  text-align: center;
  font-weight: 700; }

.button.check.active span:after,
.button.check.active:hover span:after {
  content: "\ea41"; }

.button.check,
.button.check:hover {
  padding-left: 45px !important; }

.erw .button.check span {
  color: var(--color-one); }

.erw .button.check span:before,
.erw .button.check:hover span:before {
  border-color: var(--color-one); }

.kin .button.check span {
  color: var(--color-two); }

.kin .button.check span:before,
.kin .button.check:hover span {
  border-color: var(--color-two); }

.select button:before,
.select button:after {
  content: none; }

.select-wrapper form,
.select-wrapper input,
.select-wrapper label,
.select-wrapper .Inputfield {
  float: left;
  position: relative;
  width: 100%;
  display: block;
  color: var(--color-txt); }

.select-wrapper form {
  padding-top: 0; }

.select-wrapper .Inputfield,
.select-wrapper .Inputfield:nth-child(odd) {
  padding: 0; }

#main .select-wrapper form input {
  padding-right: 70px; }

#main .select-wrapper form button {
  position: absolute;
  top: 4px;
  right: 0;
  width: 50px;
  height: 50px;
  padding: 0;
  border-radius: 0 3px 3px 0;
  background-color: var(--color-txt); }

#main .select-wrapper form .focus button {
  color: #fff;
  background-color: var(--color-one); }

#main .select-wrapper form button:hover {
  padding-left: 0 !important; }

#main .select-wrapper form .focus button span {
  color: #fff; }

#main .select-wrapper form button:before,
#main .select-wrapper form button:after {
  content: none; }

#main .select-wrapper form button span {
  padding: 0; }

#main .select-wrapper form button span:before {
  content: none; }

#main .select-wrapper form p {
  margin-bottom: 0; }

#main .select-wrapper form p.info {
  font-size: calc(16 * var(--em-per-pixels));
  font-family: var(--font-bold);
  color: var(--color-error); }

@media only screen and (max-width: 1440px) {
  .section-options .main-wrapper {
    max-width: none;
    padding-left: 2.5%;
    padding-right: 2.5%; } }

@media only screen and (max-width: 1280px) {
  #nav-opt .select-wrapper {
    padding: 10px 5% 20px 5%; }
  #nav-opt .teaser-counter {
    border: none;
    border-top: 1px solid var(--lightgrey);
    border-radius: 0; } }

@media only screen and (max-width: 960px) {
  #nav-opt .select-wrapper {
    width: 100%; } }

@media only screen and (max-width: 640px) {
  .section-options .main-wrapper {
    padding-left: 0;
    padding-right: 0; }
  #nav-opt .select-wrapper,
  #nav-opt .teaser-counter {
    width: 100%; }
  .select-nav-cont,
  .section-options .section-header {
    border-radius: 0; }
  .section-options .section-header {
    margin-top: 0;
    padding-left: 5%;
    padding-right: 5%; }
  .select-wrapper {
    width: 100%;
    padding: 2.5%; }
  #nav-cats:after {
    content: none; }
  .select-wrapper .wrapper-xxs {
    max-width: none; }
  #nav-cats .select-wrapper header:before {
    left: 0; }
  .select-wrapper header h3 {
    padding-left: 45px; }
  .button.check,
  .button.check:hover {
    float: left;
    width: auto; }
  .button.check span:before,
  .button.check:hover span:before,
  .button.check span:after,
  .button.check:hover span:after {
    left: -35px;
    width: 24px; } }

.cat-nav .inner {
  float: left;
  width: 100%;
  margin-bottom: 40px;
  display: block;
  border-right: 1px solid var(--color-txt);
  border-top: 1px solid var(--color-txt); }

.cat-nav-btn {
  position: relative;
  float: left;
  width: 33.3333333333%;
  height: 50px;
  display: block;
  text-align: center;
  color: var(--color-txt);
  border-left: 1px solid var(--color-txt);
  border-bottom: 1px solid var(--color-txt); }

.cat-nav-btn span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  padding: 0 2.5%;
  line-height: 18px;
  transform: translate(-50%, -50%); }

.cat-nav-btn.active {
  color: #fff;
  background-color: var(--color-txt); }

/*========= TEASER COUNTER =========*/
.teaser-counter {
  position: absolute;
  bottom: 0;
  right: 0;
  float: left;
  width: 160px;
  height: 80px;
  padding: 0 20px;
  display: block;
  font-size: 20px;
  text-align: center;
  /*color: #fff;*/
  /*background-color: var(--color-txt);*/
  border: 1px solid var(--lightgrey);
  border-right: none;
  border-bottom: none;
  border-radius: 6px 0 0 0; }

.teaser-counter p {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-bottom: 0;
  font-family: var(--font-regular);
  transform: translate(-50%, -50%); }

.teaser-counter strong {
  display: block;
  font-family: var(--font-bold);
  font-size: calc(20 * var(--rem-per-pixels)); }

#loc-cnt {
  margin-right: 5px;
  font-family: var(--font-bold);
  font-size: calc(24 * var(--rem-per-pixels)) !important; }

@media only screen and (max-width: 768px) {
  .section-options .main-wrapper {
    padding-left: 0;
    padding-right: 0; }
  .section-options .section-header {
    border-radius: unset;
    padding-left: 5%;
    padding-right: 5%; }
  .section-options .teaser-counter {
    position: static;
    width: 100%;
    height: auto;
    border-left: none;
    border-radius: 0;
    background-color: #fff;
    /*border: none;*/ }
  .section-options .teaser-counter p {
    position: static;
    padding: 20px 0;
    transform: translate(0, 0); }
  #loc-cnt,
  .teaser-counter strong {
    display: inline;
    font-size: calc(22 * var(--rem-per-pixels)) !important; } }

/*============= SHARE BUTTONS =============*/
.section-socialbtns {
  padding: 0 !important;
  background-color: #fff; }

#main .share-btns {
  padding-top: 40px;
  padding-bottom: 20px; }

.news-page #main .share-btns {
  max-width: var(--max-width-s); }

.share-btns-col {
  float: left;
  width: auto;
  padding: 0 5% 20px 0;
  display: block; }

#main .share-btns header {
  max-width: none;
  padding: 0;
  margin: 0; }

.black .share-btns header *,
.share-btns header * {
  color: var(--color-two);
  margin-bottom: 0;
  text-align: left; }

.share-btns h3,
.share-btns p {
  margin-bottom: 5px;
  font-size: calc(16 * var(--em-per-pixels));
  line-height: calc(22 * var(--em-per-pixels));
  font-family: var(--font-bold);
  font-weight: 600; }

.socialbuttons {
  float: left;
  clear: both;
  width: 100%;
  padding-bottom: 0;
  display: flex;
  flex-flow: row wrap;
  gap: var(--gap-txt); }

.socialbuttons li,
#main-container #mainfooter .socialbuttons li {
  position: relative;
  float: left;
  width: auto;
  display: block; }

.socialbuttons .button,
#mainfooter .socialbuttons .button {
  border-radius: 5px; }

.socialbuttons .button:before {
  border-radius: 3px; }

#mainfooter .socialbuttons .button:after {
  content: none; }

.socialbuttons .button,
#mainfooter .socialbuttons .button {
  position: relative;
  float: left;
  width: 3.125rem;
  height: 3.125rem;
  padding: 0;
  margin: 0;
  color: var(--color-txt);
  text-align: center;
  background-color: transparent;
  border: 2px solid var(--color-txt);
  overflow: visible !important; }

#mainfooter .socialbuttons .button {
  border-color: var(--color-txt); }

.socialbuttons .button:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  font: 1.875rem/2.75rem superduperfont;
  text-align: center;
  color: var(--color-txt);
  background-color: transparent;
  opacity: 1;
  transform: unset;
  transition: unset; }

#mainfooter .socialbuttons .button:before {
  color: #fff; }

.socialbuttons .button:hover,
.socialbuttons .button:hover:before {
  left: 0;
  padding: 0;
  color: var(--color-txt);
  background-color: var(--color-one); }

#mainfooter .socialbuttons .button:hover:before {
  background-color: transparent; }

.socialbuttons a:after {
  width: 0;
  height: 100%; }

.socialbuttons strong {
  position: absolute;
  bottom: -1.5rem;
  left: 50%;
  z-index: 1;
  width: 88px;
  font-size: 0.625rem;
  line-height: 1.875rem;
  letter-spacing: 0.04em;
  text-align: center;
  text-transform: none;
  color: var(--color-txt);
  opacity: 0;
  transform: translateX(-50%); }

.socialbuttons a:hover strong {
  opacity: 1; }

.socialbuttons .button.phone:before {
  content: "\ead6"; }

.socialbuttons .button.fax:before {
  content: "\ea75"; }

.socialbuttons .button.email:before {
  content: "\eabe"; }

.socialbuttons .button.print:before {
  content: "\ea75"; }

.socialbuttons .button.facebook:before {
  /*font-size: 20px;*/
  content: "\ea71"; }

.socialbuttons .button.instagram:before {
  content: "\ea9d";
  top: 2px;
  left: 3px; }

.socialbuttons .button.kununu:before {
  content: "\eaa1";
  left: 1px; }

.socialbuttons .button.whatsapp:before {
  /*font-size: 22px;*/
  content: "\eb1e"; }

.socialbuttons .button.youtube:before {
  content: "\eb20"; }

.socialbuttons .button.xing:before {
  content: "\eb1f"; }

.socialbuttons .button.linkedin:before {
  /*font-size: 18px;*/
  content: "\eaad";
  top: 1px;
  left: 1px; }

.socialbuttons .button.twitter:before {
  font-size: 25px;
  content: "\eb11"; }

.socialbuttons .button.pinterest:before {
  content: "\eab5"; }

/*============= MODAL-NAV =============*/
#modal-nav {
  position: fixed;
  bottom: -120px;
  left: 50%;
  z-index: 10;
  width: auto;
  height: auto;
  padding: 0 10px !important;
  display: block;
  transform: translate(-50%, -50%);
  transition: bottom 350ms ease-in-out; }

#modal-nav.on {
  bottom: 0; }

#modal-nav ul {
  padding: 0; }

#modal-nav li {
  position: relative;
  float: right;
  display: block;
  /*overflow: hidden;*/ }

#modal-nav li .inner {
  position: relative;
  float: right;
  margin: 0;
  display: block; }

#modal-nav .inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background-color: #fff;
  animation: scale-pulse 2s infinite; }

#modal-nav .inner:hover::before {
  animation-iteration-count: 1; }

#modal-nav svg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  transform: rotate(-15deg);
  display: none; }

#modal-nav .button {
  float: right;
  border: 4px solid #fff;
  box-shadow: 0 15px 30px 4px rgba(0, 0, 0, 0.2); }

#modal-nav .button::before,
#modal-nav .button::after,
#modal-nav .inner::before {
  border-radius: 80px; }

#modal-nav .button span::before {
  left: -64px; }

#modal-nav .button span::before {
  left: -64px; }

#modal-nav path {
  width: 200%; }

#modal-nav text {
  font-family: var(--font-bold);
  font-size: 50px;
  text-align: center;
  fill: #fff;
  text-transform: uppercase;
  transform: scale(1.4) translate(-14%, -14%); }

/*============= TOGGLE-BTNS =============*/
.button.tggl {
  padding: 0;
  cursor: auto; }

.button.tggl {
  height: 80px;
  width: 80px;
  border-radius: 40px; }

@media (hover: hover) and (pointer: fine) {
  /*.button.tggl,*/
  .button.tggl:hover {
    width: 400px;
    padding: 0 !important; } }

.button.tggl span {
  left: -20px;
  width: 380px;
  height: 72px;
  padding: 0;
  border-left: 80px solid transparent;
  box-sizing: border-box;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: center;
  font-size: 16px; }

.button.tggl span:before,
.button.tggl:hover span:before {
  top: -2px;
  left: -62px;
  width: 80px;
  font-size: 40px;
  line-height: 80px;
  font-weight: 100;
  opacity: 1; }

.button.tggl.phone span:before {
  content: "\ead6"; }

.button.tggl strong {
  font-family: var(--font-regular);
  font-size: 16px; }

.button.tggl a {
  height: auto;
  padding: 2px 0 0 0 !important;
  font-family: var(--font-bold);
  font-size: 18px;
  display: block; }

.button.tggl a::before {
  content: none; }

#main-container .button.tggl a,
#main-container .button.tggl strong,
#main-container .button.tggl span {
  line-height: 1.125rem;
  padding: 0 !important;
  white-space: nowrap; }

@media only screen and (max-width: 1440px) {
  .button.tggl,
  .button.tggl span {
    border-radius: 32px; }
  .button.tggl {
    width: 64px;
    height: 64px; }
  .button.tggl span {
    width: 320px;
    height: 56px; }
  .button.tggl span:before,
  .button.tggl:hover span:before,
  #modal-nav .button span::before {
    top: 0;
    left: -61px;
    width: 60px;
    font-size: 36px;
    line-height: 60px; }
  .button.tggl a {
    font-size: 0.875rem;
    line-height: 1.25em; }
  .button.tggl strong {
    font-size: 0.875rem;
    line-height: 1.25em; }
  #modal-nav {
    transform: translate(-50%, -25%); } }

@media (hover: hover) and (pointer: fine) and (max-width: 1440px) {
  .button.tggl:hover {
    width: 290px; } }

@media only screen and (max-width: 1024px) {
  .button.tggl {
    transition: all 350ms ease-in-out; } }

@media only screen and (max-width: 768px) {
  #modal-nav {
    left: 50%;
    padding: 0 !important;
    bottom: calc(var(--gap-col) / 2);
    transform: translate(-50%, 0); }
  #modal-nav.on {
    bottom: calc(var(--gap-col) / 2); } }

/*========== WRAPPER-STYLES ==========*/
#main-container,
#main {
  position: relative;
  z-index: 1;
  width: 100%;
  display: block;
  overflow: hidden; }

.career #mainnav-container,
.career #main-container {
  padding-left: var(--gap-col);
  padding-right: var(--gap-col); }

#main {
  z-index: 2;
  padding: 0;
  margin-bottom: 100vh;
  display: block;
  background-image: linear-gradient(to bottom, rgba(var(--white), 0), rgba(var(--white), 1) 50%);
  opacity: 0;
  border-top: var(--menu-height) solid var(--color-bg); }

@media only screen and (min-width: 90.0625rem) {
  #main {
    padding: var(--gap-row) 0; } }

.iframe-page #main {
  padding: 0;
  margin-bottom: 0; }

#main:has(section.bgi:first-child),
#main:has(section.bgc:first-child) {
  padding-top: 0; }

#main:has(section.bgi:last-child),
#main:has(section.bgc:last-child) {
  padding-bottom: 0; }

.wrapper-xl,
.wrapper-l,
.main-wrapper,
.wrapper-s,
.wrapper-xs,
.wrapper-xxs {
  position: relative;
  width: 100%;
  padding: 0 var(--gap-col);
  margin: 0 auto; }

.wrapper-xl {
  max-width: var(--max-width-xl); }

.wrapper-l {
  max-width: var(--max-width-l); }

.main-wrapper,
.career #main,
.career #mainfooter {
  position: relative;
  top: auto;
  left: auto;
  max-width: var(--max-width-m);
  margin: 0 auto; }

.career #main {
  padding: 0; }

.wrapper-s {
  max-width: var(--max-width-s); }

.wrapper-xs {
  max-width: var(--max-width-xs); }

.wrapper-xxs {
  max-width: var(--max-width-xxs); }

@media only screen and (max-width: 90rem) {
  .career #mainnav-container,
  .career #main-container {
    padding-left: 0;
    padding-right: 0; } }

@media only screen and (max-width: 64rem) {
  #main {
    padding: 0; } }

section,
header,
footer,
article,
.article-body {
  width: 100%;
  display: block; }

.main-wrapper .wrapper-s {
  margin: 0; }

figure,
figure img {
  width: 100%;
  display: block; }

#main,
.logo,
.bg-img,
figure,
section,
.section-bg,
#mainfooter {
  background-size: auto 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center; }

#main {
  background-attachment: fixed; }

.clearfix {
  width: 100%;
  display: block; }

#main header img.align_center {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto; }

/*========== BUTTON-STYLES ==========*/
.button-wrapper {
  float: left;
  clear: both;
  z-index: 3;
  width: 100%;
  padding: 0;
  display: block;
  text-align: center; }

.button,
button,
a {
  text-decoration: none;
  outline: none; }

.button,
.button a,
.button:after,
.button span:before,
.button:hover a:before,
.button:after,
#menu-btn,
.InputfieldForm button,
.InputfieldForm button:before,
#main-container input[type="file"],
figure a + figcaption,
figure a + figcaption:before {
  transition: all 350ms ease-in-out;
  border-radius: calc(22 * var(--rem-per-pixels)); }

@media only screen and (max-width: 1024px) {
  .button,
  .button a,
  .button:after,
  .button span:before,
  .button:hover a:before,
  .button:after,
  #menu-btn,
  .InputfieldForm button,
  .InputfieldForm button:before,
  #main-container input[type="file"],
  figure a + figcaption,
  figure a + figcaption:before {
    transition: unset; } }

.button,
button,
#main-container .InputfieldForm button {
  position: relative;
  width: auto;
  height: 2.75rem;
  padding: 0 1.5625rem;
  display: inline-block;
  font-family: var(--font-bold);
  --color-txt: var(--color-bg) !important;
  letter-spacing: 0.1em;
  font-size: var(--button-fontsize);
  line-height: 2.75rem;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  overflow: hidden !important;
  outline: none;
  border: none;
  appearance: none;
  backface-visibility: hidden; }

.InputfieldSubmit button::before {
  color: var(--color-bg) !important; }

.button[style*="text-align:center;"] {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  clear: both; }

.article-body .button,
.article-body button {
  margin-bottom: 15px; }

.button.link-btn {
  padding: 0 !important; }

.button a {
  position: relative;
  z-index: 2;
  height: 44px;
  padding: 0 25px !important;
  line-height: 50px;
  display: block; }

.button:hover a {
  padding-left: 0 !important; }

@media (hover: hover) and (pointer: fine) {
  .button:hover,
  .InputfieldForm button:hover,
  .logo-slider li:hover .button,
  .teaser-btn:hover .button {
    padding-left: 40px !important; } }

.button *,
.button *::before,
.button *::after,
.teaser-btn:hover .button * {
  font-family: var(--font-bold);
  text-decoration: none;
  --color-txt: var(--color-bg);
  border: none;
  outline: none; }

.button span {
  position: relative;
  z-index: 2;
  line-height: 2.75rem;
  display: inline-block; }

.firefox .button span {
  line-height: 2.75rem; }

.button span:before,
.button a:before,
.InputfieldForm button::before,
figure a + figcaption::before {
  content: "\ea45";
  position: absolute;
  z-index: 2;
  top: 0;
  left: -35px;
  font-family: "superduperfont";
  font-size: 1.375rem;
  line-height: 2.75rem;
  font-weight: bold;
  display: block;
  opacity: 0; }

.button:hover span:before,
.teaser-btn:hover .button span:before,
.logo-slider li:hover .button span:before,
.button:hover a:before,
.caption .button:hover a:before,
figure a:hover + figcaption::before {
  left: -25px;
  opacity: 1; }

.InputfieldForm button:hover::before {
  left: 10px;
  opacity: 1; }

.button.small,
.button.small span {
  font-size: 0.9375rem;
  line-height: 1.875rem; }

.button.small {
  position: relative;
  height: 1.875rem;
  padding: 0 0.9375rem;
  letter-spacing: 0.1em;
  border-radius: var(--border-radius-mid); }

.button.small span:before {
  font-size: 1.125rem;
  line-height: 1.875rem; }

.button.hero {
  position: relative;
  width: auto;
  height: 66px;
  margin-top: 20px;
  padding: 0 40px;
  letter-spacing: 0.1em;
  font-size: 1.375rem;
  line-height: 4.5rem;
  border-radius: 2.0625rem; }

.button.hero:hover {
  padding-left: 60px !important; }

.button.hero span:before {
  left: -25px;
  font-size: 24px;
  line-height: 66px; }

.button.hero:hover span:before {
  left: -25px; }

.black .button:hover * {
  color: #424242; }

.colored .button:hover * {
  color: var(--color-two); }

.button.min {
  width: 50px;
  height: 50px;
  border: none;
  border-radius: 100%;
  padding: 0;
  text-align: center; }

.button.min:hover {
  padding: 0; }

.button.min span,
.button.min span:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 50px;
  height: 50px;
  padding: 0;
  margin: 0;
  display: block;
  font: 1.875rem/3.125rem superduperfont;
  color: var(--white);
  text-align: center;
  opacity: 1; }

.button.min span:before {
  text-indent: 2px; }

.button.next span:before {
  content: "\ea45";
  text-indent: -3px; }

.button.next:hover span:before {
  left: 3px; }

.button.prev span:before {
  content: "\ea44";
  text-indent: -5px; }

.button.prev:hover span:before {
  left: -3px; }

.button.prev span:before {
  content: "\ea44"; }

.button.back span:before {
  content: "\ea44"; }

.button.close span:before {
  content: "\ea4b"; }

.button.close:hover span:before {
  transform: scale(1.25); }

.button:after,
.cta-btn:after {
  content: "";
  position: absolute;
  top: 0;
  left: -200%;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-color: var(--color-one);
  opacity: 0;
  opacity: 1; }

.bg-gradient .button:after,
.bg-green .button:after,
.bg-blue .button:after,
.bg-black .button:after,
.bg-grey .button:after,
.bg-color-one .button:after,
.bg-color-two .button:after {
  background: var(--white) !important; }

.bg-gradient .button span,
.bg-gradient .button a,
.bg-gradient .button span:before,
.bg-gradient .button a:before {
  background: -webkit-linear-gradient(left, var(--color-one), var(--color-two));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; }

.button.min:after {
  width: 100%; }

.btn-title:after {
  content: none; }

#editpage-btn {
  position: fixed;
  bottom: 22px;
  left: 22px;
  z-index: 100;
  opacity: 0.75; }

#editpage-btn:hover {
  opacity: 1; }

.docs {
  width: 100%;
  margin-bottom: 20px;
  display: block;
  text-align: center; }

.btn-wrapper {
  width: 100%;
  display: block; }

@media only screen and (max-width: 1024px) {
  .button a,
  .button:hover a {
    padding: 0 20px; }
  .button a,
  .button:hover a {
    padding: 0 20px !important; }
  #menu-btn span {
    padding: 0; }
  #editpage-btn {
    position: fixed;
    bottom: 0;
    left: 0;
    padding: 0;
    opacity: 1;
    border-radius: 0 var(--border-radius-mid) 0 0; }
  #editpage-btn:after {
    position: relative;
    content: "Seite editieren";
    float: left;
    padding: 0 20px;
    display: block;
    border-radius: unset; }
  #editpage-btn span {
    display: none; } }

/*========== HEADER / FOOTER ==========*/
article header,
article footer,
#main-container header .column.one,
.section-header {
  width: 100%;
  display: block; }

.section-header,
.section-footer,
.section-header .wrapper-s,
.section-footer .wrapper-s {
  display: flex;
  flex-flow: row wrap;
  row-gap: 0.9375rem; }

.section-header {
  padding-bottom: var(--gap-row); }

.section-header:last-child {
  padding-bottom: 0; }

.section-footer {
  clear: both;
  padding-top: var(--gap-row); }

.section-footer:first-child {
  padding-top: 0; }

.section-footer .button {
  left: 50%;
  transform: translateX(-50%); }

.section-header *:last-child,
.section-footer *:last-child,
article header *:last-child,
article footer *:last-child {
  margin-bottom: 0; }

@media only screen and (max-width: 64rem) {
  .section-header {
    padding-bottom: 3.75rem/2; }
  .portrait .section-header * {
    text-align: center; }
  .section-footer {
    padding-top: 3.75rem/2; } }

.section-header .wrapper-s {
  max-width: none;
  padding: 0 !important; }

.section-header *:last-child {
  margin-bottom: 0; }

header figure,
header img {
  width: 100%;
  display: block; }

/*========== CATEGORY-TITLE ==========*/
.cat-title {
  width: 100%;
  padding: 0;
  margin: 0;
  display: block;
  letter-spacing: 0.04em;
  font-size: calc(14 * var(--em-per-pixels));
  font-family: var(--font-running-text-bold);
  letter-spacing: 0.04em;
  color: var(--color-one); }

.kin .cat-title {
  color: var(--color-two); }

.teaser-item .cat-title {
  margin-bottom: 5px; }

/*========== CATEGORY ==========*/
.categories {
  float: left;
  width: 100%;
  display: block; }

.categories li {
  float: left;
  width: 100%;
  padding-top: calc(var(--gap-row) / 2);
  margin-bottom: 0;
  display: block; }

.categories li:first-child {
  padding-top: 0; }

.categories p {
  float: left;
  width: 100%;
  margin-bottom: 0;
  font-family: var(--font-bold);
  /*font-family: var(--font-running-text-bold);*/ }

.categories p:first-child {
  font-family: var(--font-bold); }

/*.categories .cat.one,*/
.categories .cat.one p:first-child {
  color: var(--color-one);
  border-color: var(--color-one); }

/*.categories .cat.two,*/
.categories .cat.two p:first-child {
  color: var(--color-two);
  border-color: var(--color-two); }

.categories hr {
  float: left;
  width: 100%;
  max-width: 20px;
  height: 2px;
  margin: 0;
  display: none;
  background-color: var(--color-txt); }

.categories .one hr {
  background-color: var(--color-one); }

.categories .two hr {
  background-color: var(--color-two); }

.categories hr:after {
  content: none; }

.categories p span {
  float: left;
  padding: 0;
  display: block; }

.categories p span:before {
  float: left;
  content: " | ";
  margin: 0 5px;
  display: block;
  font-family: var(--font-regular); }

.categories p span:first-child:before {
  content: none; }

/*========== TAGS ==========*/
.tags-wrapper {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  gap: 0.3125rem;
  align-content: center;
  justify-content: center;
  margin: 0 auto; }

.tag {
  float: left;
  display: flex;
  flex-flow: row nowrap;
  gap: 0.3125rem;
  align-items: center; }

.tag:first-child :is(img, svg) {
  margin-left: 0; }

.tag :is(img, svg) {
  margin-left: var(--gap-txt);
  width: 1.625rem;
  height: 1.625rem;
  object-fit: contain;
  object-position: center; }

svg path {
  stroke: var(--color-one) !important;
  fill: var(--color-one) !important; }

/*========== LOGO ==========*/
.logo {
  width: 100%;
  height: 80px;
  display: block;
  background-size: contain;
  background-position: left center; }

.partner .logo,
.partner-branch .logo,
.partner .logo,
.team-vacancies .logo,
.team-vacancy .logo {
  max-width: 240px;
  margin-bottom: var(--gap-col);
  background-position: center;
  background-color: rgba(var(--white-rgb), 0.92);
  background-size: contain;
  border-radius: var(--border-radius-std); }

.logo img {
  display: none; }

/*========== MARKER ==========*/
.marker {
  padding: 1% 1.25% 0.5% 1.25% !important;
  margin: 0.5% 0;
  display: inline-block;
  color: var(--white);
  background-color: var(--color-one) !important;
  border-radius: var(--border-radius-min); }

/*========== GRADIENT ==========*/
.gradient {
  background-image: linear-gradient(to right, rgba(var(--color-one-rgb), 1) 15%, rgba(var(--color-two-rgb), 1) 50%); }

/*========== CONTACT-INFO ==========*/
.contact-info {
  margin-bottom: 20px; }

.c-phone {
  margin-bottom: 20px;
  display: block;
  letter-spacing: 0.04em; }

.c-info,
.c-info :is(p, a, h4) {
  width: 100%;
  margin: 0;
  display: flex;
  flex-flow: row wrap;
  row-gap: 0.3125rem;
  column-gap: 0.3125rem;
  font-family: var(--font-regular);
  line-height: 1.25em;
  color: var(--color-txt);
  align-items: flex-start;
  hyphens: auto; }

.c-info :is(p, a, h4) {
  flex-flow: row nowrap; }

.c-info .icon::before {
  line-height: 1.5rem;
  font-weight: 200; }

.c-info.min span {
  font-family: var(--font-regular); }

#main .contact-info .caption .button {
  margin-top: 40px;
  font-size: 16px;
  line-height: 44px; }

p .business {
  font-family: var(--font-bold); }

i.icon {
  position: relative;
  display: inline; }

i.icon::before {
  position: relative;
  display: inline;
  height: auto;
  font-family: "superduperfont";
  font-size: 1.25rem;
  line-height: 1.375rem;
  text-align: left; }

i.icon.phone::before {
  font-size: 1.25rem;
  line-height: 1.25rem;
  content: "\ead6"; }

i.icon.fax::before {
  content: "\ea75"; }

i.icon.time::before {
  content: "\ea4a"; }

i.icon.mail::before {
  content: "\eabd"; }

.c-persons {
  float: left;
  width: 100%;
  margin-top: 20px;
  display: block; }

.c-info-min * {
  font-family: var(--font-running-text);
  color: var(--color-txt); }

.teaserboards .teaser-item.img .c-info-min * {
  font-family: var(--font-bold); }

.teaserboards .teaser-item.img .c-info-min span::before {
  font-weight: 700; }

#main .c-info-min {
  float: left;
  width: 100%;
  display: block;
  hyphens: auto; }

#main .c-info-min *:last-child {
  margin-bottom: 0; }

#main .c-info-min p.c-job {
  font-family: var(--font-bold); }

#main p.c-region {
  margin: 5px 0; }

.c-persons * {
  color: var(--grey) !important; }

.c-persons h4 {
  margin-bottom: -10px; }

.c-person {
  position: relative;
  float: left;
  width: 47.5%;
  /*max-width: 200px;*/
  height: auto;
  margin: 20px 2.5% 0 0;
  display: block; }

.c-persons .portrait {
  float: left;
  width: 75%;
  height: auto;
  padding-bottom: 75%;
  margin-bottom: 5px;
  display: block; }

.c-persons .portrait img {
  width: 0;
  height: 0;
  display: none; }

.c-persons .portrait figcaption {
  float: left;
  width: 100%; }

.c-person p {
  float: left;
  width: 100%;
  display: block;
  font-family: var(--font-running-text);
  font-size: calc(16 * var(--em-per-pixels));
  line-height: calc(24 * var(--em-per-pixels)); }

#main .section-contactboards,
#main .section-contactboards:last-child,
#main .section-contactboards:last-child {
  position: relative;
  z-index: 1;
  padding: 40px 0;
  background-color: rgba(var(--white-rgb), 0.66); }

.contactboards {
  float: left;
  width: 102.5%;
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  border-left: 1px solid var(--lightgrey); }

.c-board {
  float: left;
  width: 25%;
  padding: 20px 2.5%;
  margin-bottom: -1px;
  display: block;
  border: 1px solid var(--lightgrey);
  border-left: none; }

.c-board h3,
.c-board p,
.c-board a,
.teaser-item.contact p {
  font-size: calc(16 * var(--rem-per-pixels));
  line-height: calc(24 * var(--rem-per-pixels)); }

#main .section-contactboards .c-board a {
  color: var(--color-one); }

.kin #main .section-contactboards .c-board a {
  color: var(--color-two); }

.c-board p span:before,
.teaser-item.contact p span:before,
.c-board a.c-mail span:before,
.teaser-item.contact a.c-mail span:before {
  font-size: calc(18 * var(--rem-per-pixels)); }

@media only screen and (max-width: 1440px) {
  .contactboards-container {
    width: 100%;
    max-width: none;
    margin-left: 0; }
  .contactboards {
    width: 100%;
    margin-left: 0; } }

@media only screen and (max-width: 1280px) {
  .c-board {
    width: 33.3333333333%; } }

@media only screen and (max-width: 1024px) {
  .contactboards-container {
    padding: 0; } }

@media only screen and (max-width: 960px) {
  .c-board {
    width: 50%; } }

@media only screen and (max-width: 640px) {
  .contactboards-container {
    padding: 0 5%; }
  .c-board {
    width: 100%; }
  .c-board h3,
  .c-board p,
  .c-board a,
  .teaser-item.contact p {
    line-height: calc(20 * var(--rem-per-pixels)); }
  .c-person {
    width: 100%;
    margin: 20px 0 0 0;
    display: block; } }

/*========== OCCUPANCY ==========*/
.occupancy {
  position: relative;
  padding: 0;
  margin: 0;
  display: inline-block; }

p.occupancy {
  position: relative;
  float: left;
  width: 100%;
  padding-left: 40px;
  margin: 5px 0 0 0;
  display: block;
  font-family: var(--font-bold);
  line-height: 30px; }

p.occupancy span {
  position: relative; }

p.occupancy span:before {
  content: "";
  position: absolute;
  left: -40px;
  top: -2px;
  width: 40px;
  height: 30px;
  /*margin-top: -2px;*/
  display: inline-block;
  background: url(../img/opseo-freie-betten.svg) no-repeat;
  background-position: left center;
  background-size: auto 80%; }

.occupancy .bar-graph,
.occupancy hr {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 0;
  height: 100%; }

.occupancy .bar-graph {
  width: 100%;
  height: 4px;
  background-color: var(--color-one-light); }

.occupancy hr {
  background-color: var(--color-one); }

/*========== SETTINGS ==========*/
.half,
.teasertiles li.half {
  width: 50%; }

.onethird,
.teasertiles li.onethird {
  width: 33.3333333333%; }

.twothird,
.teasertiles li.twothird {
  width: 66.6666666667%; }

.quarter,
.teasertiles li.quarter {
  width: 25%; }

@media only screen and (max-width: 960px) {
  .half,
  .teasertiles li.half {
    width: 100%; } }

@media only screen and (max-width: 768px) {
  .onethird,
  .twothird,
  .teasertiles li.onethird,
  .teasertiles li.twothird {
    width: 100%; } }

/*========== BREADCRUMBS ==========*/
#breadcrumbs-wrapper {
  position: relative;
  z-index: 2;
  width: 100%;
  display: block;
  background-color: var(--white);
  background-color: rgba(var(--white-rgb), 0.75); }

#breadcrumbs-wrapper .main-wrapper {
  padding-top: 18px;
  padding-bottom: 15px; }

#breadcrumbs-wrapper hr {
  margin-top: 0; }

#breadcrumbs-wrapper p {
  margin: 0 10px 0 0; }

#breadcrumbs-wrapper p,
#breadcrumbs,
#breadcrumbs li,
#breadcrumbs a,
#breadcrumbs a:before,
#breadcrumbs-wrapper hr {
  float: left;
  display: block; }

#breadcrumbs-wrapper * {
  font-size: 15px;
  line-height: 23px;
  color: var(--color-txt); }

#breadcrumbs-wrapper a {
  text-transform: uppercase; }

#breadcrumbs a.active span {
  letter-spacing: 0.1em;
  color: var(--color-one); }

#breadcrumbs a:before {
  content: "❯";
  width: 20px;
  text-align: center; }

#breadcrumbs a:after {
  content: none; }

#breadcrumbs li:first-child a:before {
  content: none; }

#main-container #phone-contact {
  position: absolute;
  top: 0;
  right: 30px;
  display: inline-block;
  font-size: calc(24 * var(--em-per-pixels));
  line-height: 56px;
  text-decoration: none;
  border: none;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none; }

#main-container #phone-contact:after {
  content: none; }

@media only screen and (max-width: 1152px) {
  #breadcrumbs-wrapper * {
    font-size: 13px; } }

@media only screen and (max-width: 960px) {
  #breadcrumbs-wrapper p,
  #breadcrumbs-wrapper ul {
    display: none; }
  #main-container #phone-contact {
    position: static;
    line-height: 30px; } }

/*========== ARTICLE ==========*/
.section-article {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  row-gap: var(--vert-whitespace); }

.section-article.bgc,
.section-article.bg-img {
  padding: 0; }

.section-article.bg-img,
article.bg-img {
  position: relative;
  height: auto;
  bottom: auto;
  right: auto;
  display: grid; }

.section-heroslider + .section-article {
  margin-top: 0 !important; }

.section-article article {
  grid-column: span 12; }

.section-article article.bgc {
  margin: var(--gap-row) 0; }

.section-article article.bgc:first-child {
  margin-top: 0; }

.section-article article.bgc:last-child {
  margin-bottom: 0; }

article {
  position: relative;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  column-gap: var(--gap-col);
  row-gap: var(--gap-row); }

#main article::before,
#main article::after {
  content: none; }

.section-article.toggle-con article:first-child {
  padding-top: 0; }

.section-article.toggle-con article:last-child {
  padding-bottom: 0; }

.section-article.toggle-con article .main-wrapper {
  padding-left: 0;
  padding-right: 0; }

.section-article article.bgc,
.section-article article.bg-img {
  padding-top: var(--vert-whitespace);
  padding-bottom: var(--vert-whitespace); }

article::before,
article::after {
  content: none; }

article header,
article .article-body,
article footer {
  grid-column: span 6; }

.article-bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  overflow: hidden; }

.article-bg.half {
  width: 50%; }

.article-bg.right {
  left: auto;
  right: 0; }

.article-bg img {
  display: none; }

.art-list article:first-child:before {
  content: none; }

article header .inner {
  position: relative;
  width: 100%;
  display: block; }

.art-hdr-imgs {
  position: relative;
  width: 100%;
  border-radius: var(--border-radius-std);
  overflow: hidden; }

article header :is(figure, picture) {
  width: 100%;
  height: auto;
  display: block; }

article header :is(figure, picture) img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  aspect-ratio: 16 / 9; }

article header .caption-body {
  top: 0;
  bottom: auto;
  height: auto;
  width: auto;
  padding-right: 120px;
  background: transparent; }

article header .caption-body::before {
  content: unset !important; }

article header .caption {
  position: relative;
  top: auto;
  left: auto;
  float: left;
  width: auto;
  height: auto;
  padding: 0.9375rem var(--gap-col);
  --color-txt: var(--color-one);
  display: block;
  transform: unset;
  background-color: rgba(var(--white-rgb), 0.92);
  border-radius: 0 0 var(--border-radius-mid) 0; }

@media only screen and (max-width: 60rem) {
  article.no-toggle header .caption-body,
  article.no-toggle header .caption {
    position: relative;
    top: auto;
    left: auto;
    padding: 0;
    transform: unset; }
  article.no-toggle header .caption-body.img::before {
    content: none; }
  #main article.no-toggle header .img .caption * {
    color: var(--color-std);
    text-shadow: unset; }
  #main article.no-toggle header .caption {
    padding-top: calc(var(--gap-row) / 2);
    background: transparent; } }

article img.align_left,
article img.align_right {
  float: left;
  width: 50%;
  padding: 0 5px 0 0;
  display: block; }

article img.align_right {
  float: right;
  padding: 0 0 0 5px; }

:is(article, header) :is(ul, ol) {
  float: left;
  clear: both;
  width: 100%;
  padding: 0;
  margin-bottom: var(--gap-txt);
  display: block; }

:is(article, header, .caption) ul {
  float: left;
  clear: both;
  width: 100%;
  list-style: disc;
  list-style-position: outside;
  margin-left: 0.3125rem; }

:is(article, header, .caption) li {
  position: relative;
  margin-bottom: 0.625rem; }

:is(ul, ol) + :is(ul, ol) {
  margin-top: var(--gap-txt); }

:is(ul li, ol li) :is(ul, ol) {
  margin-top: 0.625rem;
  margin-bottom: 0.625rem !important; }

:is(article, header, .caption) :is(ul, ol) li:last-child {
  margin-bottom: 0 !important; }

article ul li,
.caption ul li {
  float: left;
  width: 100%;
  display: list-item;
  hyphens: auto; }

:is(article, .caption, #main ol) ul li::marker {
  content: "•";
  color: var(--color-txt);
  font-size: 0.9375rem; }

:is(.section-header, .section-footer) ol {
  list-style: decimal;
  list-style-position: outside;
  padding-left: 1.5rem; }

:is(.section-header, .section-footer) ol li::marker {
  font-family: var(--font-running-text-bold);
  font-family: var(--font-bold);
  color: var(--color-one); }

:is(article, .caption) ol li {
  margin-bottom: 0.625rem;
  display: list-item;
  list-style-position: outside; }

:is(article, .caption, ul) ol li::marker {
  content: ""; }

:is(article, .caption) :is(ul, li ul) li {
  padding-left: 0.625rem; }

:is(article, .caption) :is(ol, li ol) li {
  padding-left: 1.5rem; }

:is(article, .caption) :is(ol, li ol) ul li {
  padding-left: 0.625rem; }

:is(article, .caption, ul) ol li::before {
  position: absolute;
  top: auto;
  left: 0;
  content: "\ea43";
  font-size: 1.5rem;
  font-weight: 800;
  text-align: center !important;
  color: var(--color-one);
  text-anchor: middle;
  text-indent: -5px;
  font-family: superduperfont;
  margin-bottom: -2px; }

:is(article, .caption) ol ul li::before {
  content: unset; }

hr {
  position: relative;
  width: 100%;
  max-width: 80px;
  height: 4px;
  margin: -10px 0 30px 0;
  display: block;
  border: none;
  background-color: transparent;
  outline: none;
  overflow: visible; }

hr::after {
  content: "• • • • •";
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 4px;
  font-size: 14px;
  line-height: 2px;
  color: var(--color-txt);
  background-color: var(--color-txt);
  border-radius: 2px;
  display: block; }

article :is(header, footer, .article-body) :is(.map, iframe) {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16/9; }

#pageheader hr {
  border-color: var(--white); }

#pageheader .main-wrapper,
#breadcrumb-wrapper .main-wrapper {
  float: none;
  max-width: var(--max-width-m);
  margin: 0 auto; }

.news-page #pageheader .main-wrapper,
.news-page #breadcrumb-wrapper .main-wrapper,
.news-page .section-article article .main-wrapper {
  max-width: var(--max-width-s); }

.article-body {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  column-gap: var(--gap-col);
  row-gap: var(--gap-row); }

.article-body::before,
.article-body::after {
  content: none; }

.article-body .column {
  grid-column: span 3;
  width: 100%;
  display: block; }

.right-left .article-body .column.two {
  grid-row-start: 1; }

.article-body:has(img) .column {
  display: flex;
  flex-flow: row wrap;
  align-content: center; }

.news-page .article-body .column {
  grid-column: span 6; }

.article-body .column *:last-child {
  margin-bottom: 0; }

.article-body :is(figure, figcaption, img) {
  float: left;
  width: 100%;
  display: block; }

.article-body :is(img, figure) {
  margin-top: 5px;
  margin-bottom: 20px; }

.article-body figure img {
  margin-bottom: 0; }

.article-body p img {
  border-radius: var(--border-radius-std);
  overflow: hidden; }

.article-body figcaption {
  width: 100%;
  margin: 0;
  display: block;
  font-size: calc(14 * var(--em-per-pixels));
  line-height: calc(22 * var(--em-per-pixels)); }

.article-body img + figcaption {
  margin-top: 10px; }

.article-body figure a + figcaption {
  position: relative;
  font-size: calc(16 * var(--rem-per-pixels)); }

figure a:hover + figcaption {
  padding-left: 20px;
  color: var(--color-one); }

figure a + figcaption:before {
  left: -20px;
  line-height: 18px !important; }

figure a:hover + figcaption:before {
  left: 0; }

/*------ ARTICLE COLUMN IMG -----*/
.article-body .column p {
  float: left;
  clear: both;
  width: 100%;
  display: block; }

.article-body p img {
  width: 100%;
  display: block; }

.article-body p:first-child img {
  margin-top: 0 !important; }

.article-body p:last-child img {
  margin-bottom: 0 !important; }

#main .section-article.bg-gradient .toggle > .inner,
#main .section-article.bg-blue .toggle > .inner,
#main .section-article.bg-green .toggle > .inner {
  background-color: transparent;
  border: 1px solid var(--white); }

#main .section-article.bg-gradient .toggle header .inner,
#main .section-article.bg-blue .toggle header .inner,
#main .section-article.bg-green .toggle header .inner {
  background-image: none;
  background-color: transparent; }

/*------ TOGGLE ARTICLE -----*/
.section-article.toggle-con {
  padding: var(--vert-whitespace) 0; }

.section-article.toggle-con,
.art-tgl-wpr {
  display: flex;
  flex-flow: row wrap;
  row-gap: calc(var(--gap-row) / 2);
  justify-content: center; }

.section-article article.toggle {
  border: 1px solid var(--lightgrey);
  border-radius: var(--border-radius-std);
  padding: 0;
  margin: 0 auto; }

.section-article article.toggle.bgc {
  border-color: var(--color-txt); }

article.no-toggle + article.toggle {
  margin-top: var(--gap-row); }

.toggle-container {
  grid-column: span 6;
  width: 100%;
  padding-top: calc(var(--gap-row) / 2);
  padding-bottom: calc(var(--gap-row) / 2);
  display: block;
  overflow: hidden;
  border-bottom: 1px solid rgba(var(--lightgrey-rgb), 0.89); }

article .toggle-container,
article.hdr-img .toggle-container,
article.bgc .toggle-container {
  padding-top: 0;
  padding-bottom: 0;
  border-radius: var(--border-radius-std);
  background-color: var(--color-bg);
  border-bottom: 0; }

article.clr .toggle-content {
  border-color: var(--color-txt); }

article.toggle header,
article.toggle .article-body,
article.toggle footer {
  padding-left: 0;
  padding-right: 0; }

article.toggle header * {
  font-family: var(--font-bold); }

article.toggle header :is(figure, picture) {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  padding-bottom: 0; }

article.toggle header .caption-body,
article.toggle header .caption {
  position: relative;
  top: auto;
  left: auto;
  transform: unset; }

article.toggle header .inner {
  overflow: hidden; }

article.toggle.no-hdri header .inner,
article.toggle header .caption,
article.toggle.bgc header .inner {
  padding: calc(var(--gap-row) / 2) var(--gap-col); }

article.toggle > .inner {
  background-color: var(--lightgrey);
  border-radius: var(--border-radius-std);
  overflow: hidden; }

article.toggle + article.no-toggle {
  margin-top: 20px; }

article.toggle {
  position: relative;
  z-index: 2;
  row-gap: unset; }

article .toggle-content {
  display: flex;
  flex-flow: row wrap;
  row-gap: var(--gap-row);
  padding-top: var(--gap-row); }

article .toggle-content,
article.hdr-img .toggle-content,
article.bgc .toggle-content {
  padding: calc(var(--gap-row) / 2); }

article .toggle-btn {
  position: relative;
  min-height: 40px;
  padding-right: 60px;
  display: flex;
  align-items: center;
  cursor: pointer; }

article header .toggle-btn,
article header.img .toggle-btn,
article .bgc .toggle-btn {
  background-color: var(--color-bg);
  border-radius: var(--border-radius-std); }

article header .toggle-btn::before {
  content: "\ea46";
  position: absolute;
  top: 50%;
  right: 0;
  width: 2.75rem;
  height: 2.75rem;
  background: transparent;
  font: 2.25rem/2.5rem superduperfont;
  color: var(--color-one);
  font-weight: 600;
  text-align: center;
  border-radius: 100%;
  transform: translateY(-50%) rotate(-180deg);
  transition: all 350ms ease-in-out; }

article header.img .toggle-btn::before,
article.bgc .toggle-btn::before {
  right: 10px; }

article.no-hdri .toggle-btn::before,
article.bgc.no-hdri .toggle-btn::before {
  right: 10px; }

.bgc article header .toggle-btn::before,
article.bgc header .toggle-btn::before {
  color: var(--color-bg);
  background-image: unset;
  background-color: var(--color-txt); }

.bg-gradient article header .toggle-btn::before {
  border: 1px solid rgba(var(--color-txt-rgb), 0.75);
  text-indent: -1px; }

article header .toggle-btn.active::before {
  transform: translateY(-50%) rotate(0deg); }

.firefox article header .toggle-btn.active::before {
  line-height: 40px; }

@media only screen and (max-width: 1024px) {
  .one-col .article-body .column.one {
    grid-column: span 6; }
  article img.align_left,
  article img.align_right {
    float: none;
    width: 100%;
    display: block; } }

@media only screen and (max-width: 60rem) {
  .article-body .column {
    grid-column: span 6; }
  .right-left .article-body .column.two {
    grid-row-start: 2; }
  .article-body img {
    margin: 20px 0; }
  article .tns-controls {
    display: none; } }

@media only screen and (max-width: 40rem) {
  article .toggle-btn {
    padding-left: 0;
    padding-right: 0; }
  article.no-hdri .toggle-btn::before,
  article.bgc.no-hdri .toggle-btn::before {
    left: 50%;
    top: auto;
    bottom: 10px;
    margin-left: 0;
    transform: translate(-50%, 0); } }

/*========== ASIDE ==========*/
.section-article.aside {
  padding: 0; }

.section-article.aside article {
  width: 66.6666666667%;
  max-width: none;
  padding: 60px 30px 45px 0;
  margin: 0; }

aside,
aside header {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%; }

aside {
  width: 33.3333333333%;
  font-size: 26px; }

aside header {
  width: 100%;
  background-size: auto 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center; }

aside img {
  position: absolute;
  visibility: hidden; }

aside .column {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 40px 0 20px 0;
  display: block; }

aside .column:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0.5; }

aside .column * {
  position: relative;
  z-index: 1;
  color: var(--white);
  text-align: center; }

#main-container aside a {
  color: var(--white); }

#main-container aside a:after {
  background-color: var(--white); }

aside .iframe-container {
  position: absolute;
  padding-bottom: 0; }

/*@media only screen and (min-width: 1280px) {
	.home .section-article,
	.basic-page-modular .section-article { padding: 120px 0; }
}*/
@media only screen and (max-width: 1024px) {
  .section-article.aside .main-wrapper {
    margin-top: 0; }
  aside,
  aside header {
    position: relative;
    width: 100%;
    height: auto;
    font-size: 21px;
    background-position: center; }
  aside {
    padding-bottom: 60px; }
  aside header {
    padding-bottom: 37.5%; }
  aside .column {
    position: relative;
    top: auto;
    left: auto; }
  aside .column:before {
    opacity: 1;
    background-color: #333; }
  aside .iframe-container {
    position: relative;
    padding-bottom: 37.5%; } }

/*========== DOC-LIST ==========*/
ul.docs.pdf li {
  height: 30px;
  padding: 0;
  line-height: 30px;
  white-space: nowrap; }

ul.docs.pdf li:before {
  content: "";
  float: left;
  display: block;
  width: 30px;
  height: 30px;
  margin-right: 10px;
  background: url(../img/pdf-doc.png) no-repeat center;
  background-size: 30px; }

/*========== PAGES-OVERVIEW ==========*/
.pages-overview-section {
  padding: 0; }

.pages-overview,
.pages-overview-two {
  width: 100%;
  display: block; }

.pages-overview {
  padding: 15px 5px 0 5px; }

.pages-overview-two {
  padding: 15px 0 0 0; }

.po-column {
  float: left;
  width: 50%;
  padding: 0 5px 15px 5px;
  display: block; }

.po-column hr {
  margin: 15px 0;
  display: block; }

.pages-overview-two .po-column {
  width: 100%;
  max-width: 640px;
  padding: 0 10px 15px 10px;
  display: block; }

.pages-overview figure {
  width: 100%;
  height: 160px;
  display: block;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-size: cover;
  overflow: hidden; }

.pages-overview-two header {
  padding: 0;
  margin-top: 0; }

.pages-overview img {
  position: absolute;
  width: 100%;
  display: block;
  visibility: hidden; }

.btn-label {
  margin: 5px 0 15px 0; }

.btn-label h1,
.btn-label h2,
.btn-label h3 {
  font-size: calc(21 * var(--em-per-pixels));
  line-height: calc(20 * var(--em-per-pixels)); }

.btn-description * {
  font-size: 12px;
  line-height: 18px;
  color: var(--color-txt); }

@media only screen and (max-width: 768px) {
  .pages-overview .po-column {
    float: none;
    width: 100%;
    max-width: 375px;
    margin: 0 auto;
    display: block; }
  .pages-overview figure {
    height: auto;
    padding-bottom: 62.5%; } }

/*========== FOOTER ==========*/
#mainfooter {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100vh;
  font-size: 13px;
  background-color: var(--color-txt);
  overflow: hidden;
  opacity: 0;
  transform: translate3d(0, 0, 0); }

#mainfooter .caption {
  padding-top: 40px; }

#mainfooter * {
  --color-txt: var(--white); }

#mainfooter .main-wrapper .inner {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  column-gap: var(--gap-col);
  row-gap: var(--gap-row); }

#mainfooter .col,
#mainfooter .col .wrapper-s {
  grid-column: span 2;
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  row-gap: var(--gap-txt);
  column-gap: var(--gap-col);
  align-content: flex-start;
  justify-content: flex-start;
  padding: 0; }

#mainfooter .col .wrapper-s {
  row-gap: 0.3125rem; }

#mainfooter .col *:last-child {
  margin-bottom: 0; }

#mainfooter h3 {
  width: 100%;
  margin-bottom: 20px;
  font-family: var(--font-bold); }

#mainfooter p,
#mainfooter p * {
  height: auto;
  font-family: var(--font-regular); }

#mainfooter .title,
#mainfooter strong {
  font-family: var(--font-bold); }

#mainfooter p,
#mainfooter * p {
  margin-bottom: 0;
  font-size: 1.125rem;
  line-height: 1.375em;
  color: var(--white); }

#mainfooter a {
  height: auto;
  padding: 0;
  color: var(--white);
  text-decoration: none; }

#mainfooter .nav-tab {
  float: left;
  width: 100%;
  margin-bottom: 10px;
  display: block; }

#mainfooter .subnav-btn span:after {
  border-color: var(--white); }

#mainfooter a:after {
  background-color: transparent; }

#mainfooter hr {
  width: 100%;
  height: 2px;
  margin: 15px 0;
  display: block;
  background: transparent;
  border: none !important;
  border-top: 1px dotted var(--color-two); }

#mainfooter .nav-list {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  gap: 0.3125rem; }

#mainfooter .nav-list ul,
#mainfooter .nav-list li {
  width: 100%;
  display: block; }

#mainfooter .nav-list ul ul,
#mainfooter .nav-list ul ul li {
  float: none; }

#mainfooter .nav-list p {
  top: auto;
  transform: none; }

#mainfooter .subnav {
  width: 100%;
  display: none; }

#mainfooter :is(.nav-btn, .nav-btn p, .subnav-btn, .subnav-btn p) {
  float: left;
  clear: both;
  width: 100%;
  display: block; }

#mainfooter #copyright-disclaimer {
  grid-column: span 6;
  width: 100%;
  margin-bottom: 0;
  display: block; }

@media only screen and (min-width: 80rem) {
  #mainfooter #copyright-disclaimer {
    padding-top: var(--gap-row); } }

.career #mainfooter,
.career #mainfooter #copyright-disclaimer,
.career #mainfooter .caption-wrapper,
.career #mainfooter .caption-body,
.career #mainfooter .caption {
  position: relative;
  top: auto;
  left: auto;
  height: auto;
  display: block;
  transform: none; }

#mainfooter .col.cc-teaser {
  grid-column: span 6;
  width: 100%;
  float: left;
  display: flex;
  flex-flow: row wrap;
  row-gap: 15px;
  justify-content: center; }

#mainfooter .cc-teaser * {
  text-align: center;
  max-width: var(--max-width-s); }

#mainfooter .cc-teaser *:last-child {
  margin-bottom: 0; }

@media only screen and (min-width: 64rem1) {
  .career #mainfooter .caption {
    padding: 80px 0 20px 0; } }

@media only screen and (min-height: 768px) {
  #mainfooter {
    font-size: 18px; }
  #mainfooter .row {
    padding-top: 80px; } }

@media only screen and (max-width: 80rem) {
  #mainfooter .col {
    grid-column: span 3; } }

@media only screen and (max-width: 64rem) {
  #main {
    margin-bottom: 0; }
  #mainfooter {
    position: relative;
    z-index: 2;
    height: auto;
    display: flex;
    flex-flow: row wrap; }
  #mainfooter .main-wrapper {
    padding: 3.75rem 5% 3.75rem/2 5% !important;
    max-width: none; }
  #mainfooter .main-wrapper::before,
  #mainfooter .main-wrapper::after {
    content: unset; }
  #mainfooter .caption-wrapper,
  #mainfooter .caption-body,
  #mainfooter .caption {
    position: relative;
    top: auto;
    left: auto;
    height: auto;
    padding: 0;
    display: block;
    transform: none;
    overflow: visible; }
  #mainfooter .contact li,
  #mainfooter .contact li:first-child {
    width: 100%;
    margin: 0; }
  #mainfooter .footer-nav li {
    width: 100%; }
  #mainfooter .footer-nav li:first-child {
    margin-top: 0; }
  .footer-nav .subnav p {
    float: left;
    padding: 0 20px;
    margin-left: -20px;
    display: block; }
  #mainfooter #copyright-disclaimer {
    position: relative;
    height: auto;
    text-align: left;
    padding: 0 5% 3.75rem 5%; } }

@media only screen and (max-width: 60rem) {
  #mainfooter #copyright-disclaimer {
    line-height: 20px;
    text-align: left;
    background-color: transparent;
    text-align: center; }
  #mainfooter {
    position: relative;
    height: auto;
    padding: 0; }
  #mainfooter .main-wrapper {
    padding: 3.75rem 5% 0 5%; }
  #mainfooter .inner {
    row-gap: calc(var(--gap-row) / 2);
    padding-bottom: calc(var(--gap-row) / 2); }
  #mainfooter .col,
  #mainfooter .col .wrapper-s,
  #mainfooter .col .socialbuttons {
    grid-column: span 6;
    display: flex;
    flex-flow: row wrap;
    justify-content: center; }
  #mainfooter .col p {
    width: 100%;
    display: block;
    text-align: center; }
  #mainfooter .col.quicklinks .inner,
  #mainfooter .col.contact .inner,
  #mainfooter .col .inner {
    padding: 0; }
  #mainfooter .col .inner {
    margin-bottom: -20px; }
  #mainfooter #copyright-disclaimer {
    position: relative; } }

/*========= ADDRESS-SECTION =========*/
.address-section {
  padding-bottom: 15px; }

/*========= LOGO-LIST =========*/
#mainfooter .col .logo-list,
.logo-list {
  float: left;
  width: 100%;
  padding: 0;
  margin: -5px 0;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-content: flex-start;
  row-gap: 1.25rem;
  column-gap: 1.25rem; }

@media only screen and (max-width: 60rem) {
  #mainfooter .col .logo-list,
  .logo-list {
    justify-content: center; } }

#mainfooter .logo-list .logo,
.logo-list .logo,
.logo-list figure,
.logo-list img {
  position: relative;
  float: left;
  width: auto;
  height: 90px;
  display: block; }

.caption-wrapper,
.caption-wrapper:before,
.caption-wrapper:after,
.verttxt-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%; }

.caption-wrapper:before,
.caption-wrapper:after {
  content: "";
  background-color: transparent;
  transition: all 250ms ease; }

.caption-wrapper:after {
  left: auto;
  right: 0;
  width: auto;
  height: 100%; }

.caption-body,
.verttxt-body {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  display: block;
  overflow: hidden; }

.caption,
.verttxt {
  position: relative;
  top: 50%;
  width: 100%;
  height: auto;
  display: block;
  transform: translateY(-50%); }

.no-img .caption-body,
.no-img .verttxt-body,
.no-img .caption,
.no-img .verttxt {
  position: relative;
  height: auto; }

#main .section-heroslider .caption .main-wrapper {
  padding: 0 5% 0 0; }

@media only screen and (max-width: 48rem) {
  #main .section-heroslider .caption .main-wrapper {
    padding: 0; } }

#pageheader .caption {
  padding-bottom: 75px;
  vertical-align: bottom; }

.img #pageheader .caption {
  position: absolute;
  top: auto;
  bottom: 0;
  transform: unset; }

@media only screen and (max-width: 64rem) {
  .img #pageheader .caption {
    position: relative;
    top: auto;
    bottom: auto; } }

.slide.img .caption * {
  --color-txt: var(--white); }

.slide.img .caption * {
  text-align: left;
  text-shadow: 0 3px 10px rgba(var(--black-rgb), 0.25); }

.w-txt h1,
.w-txt h2,
.w-txt h3,
.w-txt p,
.img .caption h1,
.img .caption h2,
.img .caption h3,
.img .caption p {
  background: unset;
  background-clip: unset;
  -webkit-background-clip: unset;
  -webkit-text-fill-color: unset; }

#main .img .caption .button * {
  text-shadow: none; }

.caption .txt-green * {
  color: var(--color-two); }

.caption .txt-blue * {
  color: var(--color-one); }

.caption .txt-black * {
  color: #424242; }

.caption .txt-grey * {
  color: var(--color-txt); }

.caption .txt-lightgrey * {
  color: var(--lightgrey); }

.caption .txt-white * {
  color: var(--white); }

#main .section-heroslider .caption {
  --color-txt: var(--white);
  color: var(--white);
  text-shadow: var(--text-shadow); }

#main .section-heroslider .caption .button * {
  color: var(--white);
  border-color: var(--white); }

#main .section-heroslider .caption * {
  text-shadow: none; }

#main .section-heroslider .caption *:last-child {
  margin-bottom: 0; }

@media only screen and (max-width: 64rem) {
  #main .img #pageheader :is(h1, h2, h3, h4, h5, h6, p),
  #main .img #pageheader :is(h1, h2, h3, h4, h5, h6, p) * {
    color: var(--color-one);
    text-align: left;
    text-shadow: none;
    border-color: inherit; } }

@media only screen and (max-width: 640px) {
  .section-heroslider h1,
  .section-heroslider h2,
  .section-heroslider h3,
  .section-heroslider p {
    margin-bottom: 5px; } }

/*========= CAPTION / CPT-STD =========*/
.img.cpt-std .caption-wrapper,
.img.cpt-std .caption-body,
.img.cpt-std .caption {
  top: auto;
  bottom: 0;
  height: auto;
  display: block; }

.img.cpt-std .caption-wrapper {
  height: 100%; }

.img.cpt-std .caption {
  transform: unset; }

.img.cpt-std .wrapper-s {
  width: 85%;
  max-width: none;
  padding-top: var(--gap-row);
  padding-bottom: var(--gap-row);
  padding-right: var(--gap-col);
  margin: 0;
  display: block; }

.img.cpt-std .inner {
  position: relative;
  z-index: 1;
  display: block; }

.slide.img.cpt-std .wrapper-s:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 150%;
  height: 100%;
  display: block;
  border-radius: 0 60px 0 0; }

.section-heroslider,
.slide figcaption,
.slide.img.cpt-std .wrapper-s:before {
  background-image: linear-gradient(to right, rgba(var(--color-two-rgb), 0.92) 25%, rgba(var(--color-two-light-rgb), 0.85) 70%); }

@media only screen and (min-width: 1921px) {
  .img.cpt-std .wrapper-s:before {
    width: 200%; } }

@media only screen and (max-width: 1024px) {
  .img.cpt-std .wrapper-s {
    width: 100%; } }

@media only screen and (max-width: 767px) {
  .caption .wrapper-s {
    padding: 0 5%; }
  .img.cpt-std .wrapper-s {
    padding-top: 20px;
    padding-bottom: 20px; } }

@media only screen and (max-width: 480px) {
  .slide.img.cpt-std .wrapper-s {
    font-size: 14px; } }

/*========= PAGE-BG =========*/
#page-bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  background-color: var(--white);
  overflow: hidden; }

.section-header,
.section-footer,
.caption-wrapper,
.caption-body,
.caption,
.teaser-info,
article header,
.article-body,
article footer,
article.bgc,
.teaser-wrapper {
  z-index: 4; }

.bg-img,
.section-bg,
.teaser-img {
  z-index: 3; }

#main #page-bg {
  z-index: 1;
  z-index: unset;
  opacity: 0.35;
  opacity: 1;
  background-color: var(--white); }

#page-bg:before,
#page-bg:after {
  content: "";
  position: absolute;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  display: block; }

#page-bg:before {
  left: 0; }

#page-bg:after {
  right: 0;
  background-image: linear-gradient(to bottom, rgba(var(--white-rgb), 0), rgba(var(--white-rgb), 0.89)); }

#page-bg .wrapper-l {
  height: 1440px;
  height: 100vh; }

#page-bg figure,
#page-bg img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block; }

#page-bg figure {
  z-index: 1;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed; }

#page-bg figure.icon {
  background-position: 40% 10%;
  background-size: 120% auto;
  opacity: 0.5; }

#page-bg img {
  visibility: hidden; }

@media only screen and (max-width: 1024px) {
  #page-bg {
    position: fixed; }
  #page-bg figure {
    background-attachment: scroll; } }

/*========= PAGE-BG =========*/
#pageheader,
.owl-dot,
.owl-dot:before {
  backface-visibility: hidden;
  transform: translateZ(0); }

/*========== SECTION ==========*/
section {
  position: relative;
  z-index: 1;
  clear: both;
  width: 100%;
  padding: var(--gap-row) 0;
  margin: 0 auto;
  display: block; }

section.no-bgi.no-bgc + section.bgi,
section.no-bgi.no-bgc + section.bgc {
  margin-bottom: var(--gap-row); }

section.bgi + section.no-bgi.no-bgc,
section.bgc + section.no-bgi.no-bgc {
  margin-top: var(--gap-row); }

section.bgc,
section.bg-img {
  position: relative;
  z-index: 1;
  padding-top: var(--vert-whitespace);
  padding-bottom: var(--vert-whitespace); }

section,
.section-bg {
  background-position: center; }

section.modal {
  position: fixed;
  z-index: 150;
  top: 100vh;
  left: 0;
  width: 100vw;
  height: 100vh;
  padding: 5.625rem 0;
  overflow-y: scroll;
  background-color: rgba(var(--lightgrey-rgb), 0.92);
  pointer-events: none;
  transform: translate3d(0, 0, 2px);
  transition: top 500ms var(--cubic-bezier); }

section.modal.visible {
  top: 0;
  pointer-events: all; }

section.modal .button.close.sec {
  position: absolute;
  z-index: 10;
  top: 1.25rem;
  right: 1.25rem; }

section.modal .button.close.sec::after {
  background: var(--color-one); }

.bg-img,
.section-bg {
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  display: block;
  background-repeat: no-repeat;
  overflow: hidden; }

.section-bg img {
  display: none; }

@media only screen and (min-width: 1152px) {
  .section-article.bg-img,
  .section-teasertiles,
  .section-teaserboards {
    transform: translate3d(0, 0, 0); } }

/*============= COLOR SETTINGS =============*/
section.bg-gradient {
  background-image: linear-gradient(to right, rgba(var(--color-one-rgb), 1), rgba(var(--color-two-rgb), 1) 70%); }

section.bg-lightgrey {
  --color-bg: var(--lightgrey); }

/*section.bg-gradient *,*/
section.bg-blue *,
section.bg-green * {
  --color-txt: var(--white); }

.section-bg.bg-blue:after,
.section-bg.bg-green:after,
.bg-lightgrey .section-bg:after,
.section-bg.bg-lightgrey:after,
.white .section-bg:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.section-bg.bg-blue:after {
  background-image: linear-gradient(to right, rgba(var(--color-one-rgb), 1), rgba(var(--color-one-rgb), 0.5) 66%, rgba(var(--lightgrey-rgb), 0.25)); }

.section-bg.bg-green:after {
  background-image: linear-gradient(to right, rgba(var(--color-two-rgb), 1), rgba(var(--color-two-rgb), 0.5) 50%, rgba(var(--lightgrey-rgb), 0)); }

.bg-lightgrey .section-bg:after,
.section-bg.bg-lightgrey:after {
  background-image: linear-gradient(to right, rgba(var(--lightgrey-rgb), 1), rgba(var(--lightgrey-rgb), 0.5) 50%, rgba(var(--lightgrey-rgb), 0)); }

.bg-gradient,
.bg-gradient .section-bg:after,
.section-bg.bg-gradient:after {
  background-image: linear-gradient(to right, rgba(var(--color-one-rgb), 1), rgba(var(--color-two-rgb), 1) 70%); }

@media only screen and (max-width: 1024px) {
  #main .bg-lightgrey .section-bg:after,
  .section-bg.bg-lightgrey:after {
    background-image: linear-gradient(to bottom, rgba(var(--lightgrey-rgb), 1), rgba(var(--lightgrey-rgb), 0.5) 25%, rgba(var(--lightgrey-rgb), 0)); } }

/*============= SECTION-PAGEHEADER =============*/
.section-pageheader {
  position: relative;
  z-index: 2; }

.section-pageheader.img,
.section-pageheader.img.bgc {
  z-index: 5;
  padding: 0; }

@media only screen and (max-width: 64rem) {
  .section-pageheader.img,
  .section-pageheader.img.bgc {
    padding-bottom: calc(var(--vert-whitespace) / 2); } }

@media only screen and (max-width: 90rem) {
  .section-pageheader:has(.ph-imgs-wrapper) {
    padding-top: 0; } }

#pageheader {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: var(--max-width-m);
  padding: 0;
  margin: 0 auto;
  font-size: 20px;
  display: flex;
  flex-flow: column nowrap;
  row-gap: var(--gap-row); }

#pageheader .logo {
  margin-bottom: 0; }

#pageheader :is(h1, h2, h3, h4, h5, h6, p) {
  margin-top: 0;
  margin-bottom: 0; }

.no-img #pageheader * {
  text-align: center; }

.no-img #pageheader .cat-title {
  margin: 0 auto; }

#pageheader .wrapper-s :is(.inner, .pw-edit-orig) {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  row-gap: calc(var(--gap-row) * 0.5); }

#pageheader::before,
#pageheader::after {
  content: none; }

#pageheader .main-wrapper {
  grid-column: span 12; }

.ph-imgs-wrapper,
#pageheader .caption-wrapper {
  width: 100%;
  grid-column: span 12; }

.no-img #pageheader .btn-wrapper .main-wrapper {
  display: none; }

.pageheader-imgs {
  position: relative;
  width: 100%;
  display: block; }

.pageheader-imgs figure {
  position: relative;
  height: auto;
  min-height: none;
  aspect-ratio: 21/9; }

@media only screen and (min-width: 60rem) {
  .pageheader-imgs figure {
    min-height: 320px;
    aspect-ratio: 21/9; } }

.section-heroimg figure,
.slide figure {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 75vh;
  min-height: 720px;
  display: block; }

.section-gallery .slide figure {
  height: auto;
  min-height: 0;
  padding-bottom: 56.25%; }

@media only screen and (min-width: 64.0625rem) {
  #pageheader:has(.txt-box) {
    padding-bottom: var(--gap-row); } }

@media only screen and (min-width: 90.0625rem) {
  #pageheader {
    padding: 0 var(--gap-col); }
  #pageheader:has(.txt-box) {
    padding-bottom: var(--gap-row); }
  .pageheader-imgs {
    border-radius: var(--border-radius-std);
    overflow: hidden; }
  #pageheader .txt-box {
    padding: 0; } }

.pageheader-imgs img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center; }

#pageheader .main-wrapper .wrapper-s {
  width: 100%;
  max-width: none;
  padding: 0; }

.no-img #pageheader .main-wrapper .wrapper-s {
  width: 100%;
  max-width: none; }

#pageheader .inner *:last-child {
  margin-bottom: 0; }

@media only screen and (max-width: 80rem) {
  .slide.img.cpt-std .wrapper-s {
    padding-right: 0; }
  .section-heroimg figure,
  .slide figure {
    min-height: 0;
    height: auto;
    padding-bottom: 56.25%; }
  #pageheader {
    font-size: 16px; }
  .no-img #pageheader .main-wrapper .wrapper-s {
    width: 100%; } }

@media only screen and (max-width: 1152px) {
  .section-heroimg figure,
  .slide figure {
    min-height: 0;
    height: auto;
    padding-bottom: 56.25%; } }

@media only screen and (max-width: 64rem) {
  .section-pageheader {
    background-color: rgba(var(--white-rgb), 0.89); }
  #pageheader .main-wrapper .wrapper-s {
    width: 100%; }
  #pageheader .caption-wrapper,
  #pageheader .caption-body,
  #pageheader .caption {
    position: relative;
    height: auto;
    display: block; }
  #pageheader .caption-body::before {
    content: none; }
  #pageheader .caption .category-title {
    color: var(--white); }
  #pageheader .caption {
    padding-bottom: 0; }
  #main .img #pageheader .cat-title {
    color: var(--color-one); }
  .kin #main .img #pageheader .cat-title {
    color: var(--color-two); }
  #main #pageheader .btn-wrapper {
    display: none; } }

@media only screen and (max-width: 60rem) {
  .section-heroimg figure,
  .slide figure {
    padding-bottom: 75%; }
  .slide.img.cpt-std .wrapper-s {
    width: calc(100% - var(--gap-col));
    padding: 25px var(--gap-col) 25px var(--gap-col);
    margin-right: var(--gap-col);
    display: inline-block; }
  #main .slide.img.cpt-std .wrapper-s:before {
    border-radius: 0 var(--border-radius-mid) 0 0; }
  #main .slide .button {
    position: relative;
    top: auto;
    bottom: 0;
    right: auto;
    left: 0;
    padding: 0 5% !important;
    margin-top: 20px !important; } }

@media only screen and (max-width: 767px) {
  #pageheader .caption-wrapper,
  #pageheader .caption-body::before,
  #pageheader .caption-wrapper::after,
  #pageheader .verttxt-wrapper {
    position: relative;
    height: auto; } }

@media only screen and (max-width: 40rem) {
  .slide figure {
    padding-bottom: 100%; } }

/*============= SECTION-HEROSLIDER =============*/
.section-heroslider,
.section-heroslider .wrapper-l {
  padding: 0 !important; }

.section-heroslider {
  position: relative;
  z-index: 5; }

/*============= SECTION-HEROIMG =============*/
.section-heroimg,
.section-heroimg .wrapper-l {
  padding: 0 !important; }

.section-heroimg figure {
  position: relative;
  z-index: 1; }

.section-heroimg img {
  position: absolute;
  width: 100%;
  visibility: hidden; }

.section-heroimg .caption-body,
.section-heroimg .caption,
.section-heroimg .wrapper-s {
  position: relative;
  width: 100%;
  height: auto;
  display: block; }

.section-heroimg .caption-body {
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 0; }

.section-heroimg .caption * {
  color: var(--black); }

.section-heroimg .main-wrapper {
  padding-top: 40px;
  padding-bottom: 40px;
  background-color: var(--black);
  background-color: rgba(var(--white-rgb), 0.92); }

#main .section-heroimg .scroll-btn {
  bottom: 40px; }

@media only screen and (max-width: 64rem) {
  .section-heroimg .caption-body {
    width: 100%;
    top: 2.5vh;
    right: auto; }
  .section-heroimg .wrapper-xs {
    width: 100%;
    margin-left: auto;
    margin-right: auto; } }

/*============= SECTION TOGGLELIST =============*/
.section-togglelist {
  padding: 0;
  background-color: var(--lightgrey); }

.togglelist-container {
  width: 100%;
  padding-bottom: 40px;
  display: block; }

.togglelist {
  width: 100%;
  display: block;
  overflow: hidden; }

.toggle-wrapper {
  grid-column: span 6;
  position: relative;
  width: 100%;
  height: 0;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  column-gap: var(--gap-col);
  row-gap: var(--gap-row);
  overflow: hidden; }

.toggle-content {
  grid-column: span 6;
  position: relative;
  width: 100%; }

/*============= TEASER MAIN STYLES =============*/
.teaser-item {
  position: relative;
  width: 100%;
  display: block; }

.teaser-item .inner,
.teaser-info {
  width: 100%;
  display: flex;
  flex-flow: row wrap; }

.teaser-info {
  flex-flow: column wrap;
  align-items: flex-start;
  justify-content: center;
  row-gap: 0.9375rem; }

.teaser-item header {
  display: flex;
  flex-flow: column wrap;
  row-gap: 0.625rem; }

.teaser-item header * {
  margin: 0; }

.teaser-img {
  position: relative;
  width: 100%;
  display: block; }

.teaser-item .logo {
  margin: calc(var(--gap-col) / 2) calc(var(--gap-row) / 2);
  background-position: center; }

.teaser-item.no-img .logo {
  margin-bottom: 0; }

.teaser-img figure img {
  position: absolute;
  width: 100%;
  visibility: hidden; }

.teaser-img figure {
  padding-bottom: 56.25%;
  background-position: center; }

#main .teaser-item.invisible {
  height: 0;
  min-height: 0;
  display: none; }

#main .teaser-item.visible.in {
  height: auto;
  min-height: inherit;
  display: block;
  opacity: 1; }

.section-teaser .section-header,
.section-teaser .section-footer {
  max-width: var(--max-width-l); }

.teaser-wrapper {
  position: relative;
  width: 100%;
  display: block; }

.teaser-body::before,
.teaser-wrapper::after {
  content: none; }

@media only screen and (max-width: 80rem) {
  #main .teaser-wrapper.carousel-wrapper {
    padding-bottom: 40px; } }

@media only screen and (max-width: 64rem) {
  #main .teaser-wrapper.carousel-wrapper {
    padding: 0 5% 80px 5%; } }

/*============= TEASERCARDS =============*/
.news-overview .cards {
  margin-top: -2px; }

.cards .section-header .wrapper-s {
  padding: 0;
  margin: 0; }

.cards.portrait .teaser-wrapper {
  max-width: var(--max-width-m); }

.cards .teaser-wrapper .section-header {
  padding-left: 0;
  padding-right: 0; }

.news-overview .wrapper-s {
  max-width: var(--max-width-m); }

.cards .caption-body:before {
  content: none; }

.teaser.cards {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: var(--gap-row);
  row-gap: var(--gap-row);
  justify-content: center;
  align-content: stretch; }

.cards .teaser-item {
  grid-column: span 4;
  display: flex;
  width: 100%;
  background-color: rgba(var(--white-rgb), 0.92);
  border-radius: var(--border-radius-std);
  border: 1px solid var(--lightgrey);
  overflow: hidden; }

.bgc .cards .teaser-item {
  border-color: var(--color-txt); }

.cards .teaser-item .inner {
  align-self: flex-start; }

.cards .teaser-item.no-img .teaser-info,
.cards .teaser-item.no-img .inner {
  align-self: center; }

.cards.portrait .teaser-item header {
  align-content: flex-start; }

.cards .teaser-img {
  align-self: flex-start;
  background-color: var(--lightgrey); }

.bgc .cards .teaser-item {
  background-color: transparent; }

.cards.cols-2 .teaser-item,
.cards.cols-4 .teaser-item {
  grid-column: span 6; }

.news-overview .cards .teaser-item {
  grid-column: span 6; }

.cards .teaser-info {
  position: relative;
  padding: calc(var(--gap-row) / 2); }

.cards .img .verttxt-wrapper,
.cards .img .verttxt-body,
.cards .img .verttxt {
  position: static;
  height: auto;
  display: block;
  transform: unset; }

/*----- PORTRAIT CARDS -----*/
.teaser.cards.portrait {
  display: flex;
  flex-flow: row wrap;
  justify-items: center;
  align-items: normal; }

.cards.portrait .teaser-item {
  flex: 1 0 320px;
  width: 33.3333333333%;
  max-width: 480px;
  border-radius: var(--border-radius-std);
  border-style: solid;
  border-width: 1px; }

.cards.portrait.cols-4 .teaser-item {
  grid-column: span 3; }

.cards .portrait .teaser-img figure {
  padding-bottom: 128%;
  padding-bottom: 100%;
  background-position: center top; }

@media only screen and (max-width: 64rem) {
  .cards {
    border: none; }
  .cards .teaser-wrapper {
    padding: 0 5%; }
  .cards .teaser-item {
    grid-column: span 6; }
  .cards.portrait.cols-4 .teaser-item,
  .cards .teaser-item.portrait {
    grid-column: span 6; }
  .cards .teaser-img {
    margin: 0 auto; }
  .cards .img .button-wrapper {
    position: relative;
    left: auto;
    bottom: auto;
    padding: 0; } }

@media only screen and (max-width: 60rem) {
  .cards .teaser-item,
  .cards.cols-2 .teaser-item,
  .cards.cols-4 .teaser-item {
    grid-column: span 12;
    width: 100%;
    margin: 0 auto; }
  .cards.portrait .teaser-item,
  .cards.portrait.cols-2 .teaser-item,
  .cards.portrait.cols-4 .teaser-item {
    width: 50%; } }

@media only screen and (max-width: 40rem) {
  .cards .teaser-item,
  .cards.cols-2 .teaser-item,
  .cards.cols-4 .teaser-item,
  .cards.portrait .teaser-item,
  .cards.portrait.cols-2 .teaser-item,
  .cards.portrait.cols-4 .teaser-item {
    grid-column: span 12;
    width: 100%; } }

/*============= TEASER.TABLES =============*/
.tables {
  width: 100%;
  display: flex;
  flex-flow: column wrap;
  row-gap: var(--gap-row); }

.tables::before,
.tables::after {
  content: none; }

.tables .teaser-item {
  width: 100%;
  min-height: 0;
  margin-top: 40px;
  margin: 0;
  border-radius: var(--border-radius-std);
  overflow: hidden;
  background-color: rgba(var(--white-rgb), 0.89); }

.tables .teaser-item .inner {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  row-gap: var(--gap-row);
  align-content: center;
  justify-content: center; }

.tables .teaser-item:nth-child(even) .inner {
  direction: rtl; }

.tables .teaser-img,
.tables .teaser-info {
  grid-column: span 3;
  width: 100%;
  align-items: center;
  align-content: center;
  direction: ltr; }

.tables .teaser-info {
  padding: var(--gap-row) var(--gap-col); }

.tables .teaser-img {
  position: relative; }

.tables .teaser-img figure {
  height: auto;
  min-height: 320px;
  padding-bottom: 56.25%; }

.tables .logo {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 60px;
  max-width: 240px;
  padding-left: 0;
  margin: 0;
  display: inline-block;
  background-position: center;
  background-size: auto 80%;
  background-color: var(--white);
  background-color: rgba(var(--white-rgb), 0.92);
  border-radius: 0 var(--border-radius-mid) 0 0; }

.abstract,
.button-wrapper {
  float: left;
  width: 100%;
  display: block; }

.button-wrapper .button {
  float: left; }

.teaser-title h3 {
  line-height: calc(18 * var(--em-per-pixels)); }

#main .teaser-title:after {
  content: none; }

.teaser-info .contact-info {
  margin: 0 0 10px 0; }

.teaser-info .button-wrapper {
  margin: 0;
  text-align: left; }

@media only screen and (max-width: 80rem) {
  .tables .teaser-img {
    grid-column: span 4; }
  .tables .teaser-info {
    grid-column: span 2; } }

@media only screen and (max-width: 60rem) {
  .tables .teaser-img {
    grid-column: span 6; }
  .tables .teaser-info {
    grid-column: span 6;
    padding-top: 0; }
  .teaser.tables .teaser-img figure {
    min-height: 0; } }

/*========= TEASERBOARDS =========*/
.teaser.boards {
  width: 100%;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: calc(var(--gap-row) / 2);
  row-gap: calc(var(--gap-row) / 2); }

.boards .teaser-item {
  grid-column: span 4;
  position: relative;
  width: 100%;
  border-radius: var(--border-radius-std);
  overflow: hidden; }

.boards.count-2 .teaser-item,
.boards.count-4 .teaser-item {
  grid-column: span 6; }

.boards .img header *,
.boards .img .abstract {
  font-family: var(--font-bold);
  font-weight: 600;
  text-shadow: var(--text-shadow);
  --color-txt: var(--white); }

.boards .teaser-item .inner {
  float: left;
  position: relative;
  width: 100%;
  height: 25vh;
  height: max(25vh, 320px);
  padding: calc(var(--gap-row) / 3) calc(var(--gap-col) / 3);
  display: flex;
  flex-flow: row wrap;
  row-gap: 0.625rem;
  background-color: var(--lightgrey);
  overflow: hidden; }

.bgc .boards .teaser-item {
  border: 1px solid var(--white); }

.bgc .boards .teaser-item .inner {
  background-color: transparent; }

.boards .teaser-btn {
  transition: all 350ms ease;
  overflow: hidden; }

.boards .teaser-btn:hover {
  transform: translate3d(0, 0, 0); }

.boards .teaser-img::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(to right, rgba(var(--black-rgb), 0.66), rgba(var(--black-rgb), 0.11) 100%, rgba(var(--black-rgb), 0));
  opacity: 0.5; }

.boards .img header * {
  --color-txt: var(--white);
  background: transparent;
  background-clip: unset;
  -webkit-background-clip: unset;
  -webkit-text-fill-color: unset; }

.boards .teaser-btn:hover .teaser-info:before {
  opacity: 1; }

.teaser-btn:after,
.boards .no-img .teaser-info:before {
  content: none; }

.boards .wrapper-xs {
  max-width: 480px;
  padding: 0 10% 0 20px;
  margin: 0; }

.boards .teaser-info {
  position: relative;
  top: 0;
  left: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  min-height: 0;
  flex-flow: row wrap;
  align-content: flex-start;
  row-gap: 0.625rem; }

.boards.large .teaser-item:before,
.boards.large .teaser-item .inner,
.boards .teaser-img figure,
.boards .logo,
.boards .abstract {
  transition: all 350ms ease; }

.boards .teaser-img,
.boards .teaser-img figure {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  padding-bottom: 0;
  background-position: center; }

.boards .teaser-img.no-img figure {
  filter: grayscale(100%); }

.section-gmap .teaser-item {
  cursor: pointer; }

.boards .wrapper-xs {
  position: static;
  padding: 40px 10% 0 20px; }

.boards .teaser-item header {
  row-gap: 10px;
  position: relative;
  justify-content: flex-start; }

.boards .teaser-btn .logo {
  position: relative;
  z-index: 5;
  top: auto;
  left: auto;
  height: 80px;
  margin: 0;
  background-position: left center;
  background-size: contain; }

.boards .img .teaser-btn .logo {
  filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.5)); }

@media (hover: hover) and (pointer: fine) {
  .boards .teaser-btn .abstract {
    position: relative;
    top: 20px;
    z-index: -1;
    padding: 0;
    opacity: 0; }
  .boards .teaser-btn:hover .abstract {
    top: 0;
    z-index: 3;
    opacity: 1; } }

.boards .teaser-item.contact .abstract {
  display: none; }

#main .boards .button {
  position: absolute;
  bottom: 30px;
  left: 40px;
  z-index: 2; }

.boards .categories {
  display: none; }

.boards .categories .cat {
  width: 100%;
  padding: 0;
  margin: 0;
  display: block; }

#main .boards .teaser-item .button {
  position: absolute;
  bottom: 0;
  left: 0;
  border-radius: 0 var(--border-radius-std) 0 0; }

#main .boards .teaser-btn:hover .button,
#main .boards .teaser-item .button:hover {
  filter: grayscale(0) brightness(1); }

#main .boards .teaser-item .button:after {
  border-radius: 0 !important; }

/*=== TEASERBOARDS - VACANCY ===*/
.boards .teaser-item.vac {
  background-color: var(--white); }

.boards .teaser-item.vac.visible.out,
.boards .teaser-item.vac.out,
.boards .teaser-item.vac.hidden {
  display: none; }

.boards .teaser-item.vac.in,
.boards .teaser-item.vac.visible {
  display: block; }

.boards .teaser-item.vac .inner {
  padding-bottom: 0; }

.teaser-item.vac.no-img .teaser-info,
.teaser-item.vac.no-img .caption-body,
.teaser-item.vac .caption,
.boards .teaser-item.vac header,
.boards .teaser-item.vac .abstract {
  position: static;
  padding: 0;
  display: block; }

.boards .wrapper-xs {
  padding: 20px; }

.boards .teaser-item.vac header {
  min-height: 80px; }

.boards .teaser-item.vac .abstract {
  opacity: 1; }

.erw #main .teaser-item.vac header * {
  color: var(--color-one); }

.boards .teaser-item.vac header p,
.boards .teaser-item.vac .abstract * {
  font-family: var(--font-running-text-bold); }

@media only screen and (max-width: 100rem) {
  .boards .teaser-item {
    grid-column: span 6; } }

@media only screen and (max-width: 60rem) {
  .boards-container {
    padding: 0 5%; }
  .boards {
    row-gap: var(--gap-row); }
  .boards .teaser-item,
  .boards.count-2 .teaser-item,
  .boards.count-4 .teaser-item {
    grid-column: span 12; }
  .boards .wrapper-xs {
    padding: 0 5% 0 20px; }
  .boards .teaser-btn:hover .logo {
    opacity: 1; }
  .boards .teaser-btn .abstract,
  .boards .teaser-btn:hover .abstract {
    top: 0;
    opacity: 1; }
  .boards .teaser-btn .teaser-info:before {
    opacity: 1; } }

@media only screen and (max-width: 40rem) {
  .boards .img .caption-body::before {
    width: 150%;
    height: 150%; }
  .boards .wrapper-xs {
    min-height: 125px; } }

@media only screen and (max-width: 480px) {
  .boards .teaser-info,
  .boards .teaser-btn .caption-body,
  .boards .teaser-btn .caption {
    position: relative;
    display: block; }
  .boards .teaser-btn .caption {
    padding: 20px 0 40px 0; }
  .boards header h3,
  .boards .teaser-btn .logo {
    float: none;
    width: 100%;
    display: block; }
  .boards .teaser-btn .logo {
    right: auto;
    margin-bottom: 20px;
    background-position: left center;
    background-size: auto 100%; }
  .boards .teaser-item header,
  .boards .teaser-btn .abstract {
    position: relative;
    top: 0;
    left: 0;
    padding: 0; }
  .boards .teaser-btn:hover .abstract {
    top: 0; }
  .boards .c-phone {
    text-align: left;
    font-size: calc(22 * var(--rem-per-pixels));
    line-height: calc(18 * var(--em-per-pixels)); } }

/*========= TEASERLIST =========*/
.teaser.list .teaser-item .inner,
.teaser.list .teaser-item .inner:before {
  transition: all 350ms ease; }

.teaser-row.out,
.teaser-row.invisible,
.teaser-row.invisible.in,
.teaser-row.unselected {
  display: none; }

.teaser-row.in,
.teaser-row.visible.in,
.teaser-row.unselected.in {
  display: block;
  opacity: 1; }

.teaser-row {
  margin-top: var(--gap-row); }

.teaser-row:first-child {
  margin-top: 0; }

#main .teaser-row .teaser-title {
  float: left;
  width: 100%;
  padding: 40px 0 0 0;
  margin-top: 0;
  margin-bottom: 0; }

.teaser.list {
  display: flex;
  flex-flow: column wrap;
  justify-content: space-between;
  row-gap: var(--gap-row);
  width: 100%;
  padding: 0;
  margin: 0; }

.teaser.list .teaser-item,
.teaser.list .inner,
.teaser.list .teaser-info {
  width: 100%; }

.teaser.list .teaser-item {
  width: 100%;
  background-color: var(--white);
  border-radius: var(--border-radius-min);
  overflow: hidden; }

.teaser.list .teaser-item:first-child {
  margin-top: 0; }

.teaser.list .teaser-item.no-img::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  height: 100%;
  background: var(--white); }

.teaser.list .inner {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  padding: 0;
  overflow: visible;
  border-color: var(--color-txt); }

.teaser.list .inner :is(h1, h2, h3, h4, h5, h6, p, ul, ol) {
  grid-column: span 6; }

.teaser.list .teaser-item.active .inner {
  border-left: 40px solid var(--color-txt);
  transform: translate3d(0, 0, 0); }

.teaser.list .teaser-item.active .inner,
.teaserlist.preview .teaser-item:hover .inner,
.teaserlist.preview .teaser-item:hover figure {
  transform: translate3d(0, 0, 0); }

.teaser.list .teaser-item.active .inner:before,
.teaserlist.preview .teaser-item .inner:before {
  content: "\ea16";
  position: absolute;
  z-index: 2;
  top: 50%;
  left: -40px;
  width: 44px;
  height: 44px;
  margin-top: -22px;
  font: 44px/44px "superduperfont";
  color: var(--white);
  text-align: center; }

.teaser.list .teaser-img,
.teaser.list .teaser-info {
  grid-column: span 3; }

.teaser.list .teaser-info {
  align-content: center;
  padding: var(--gap-row) var(--gap-col);
  height: max(375px, 25vh);
  row-gap: calc(var(--gap-row) / 2); }

.partner-overview .teaser.list .no-img .teaser-img {
  background: url("../img/home-icon.svg") no-repeat center;
  background-size: auto 50%; }

.teaser.list .teaser-img figure {
  height: 100%;
  padding-bottom: 0; }

.teaser.list .logo {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 60px;
  max-width: 240px;
  padding: 0;
  margin: 0;
  display: inline-block;
  background-position: center;
  background-color: var(--white);
  background-size: auto 80%;
  background-color: rgba(var(--white-rgb), 0.92);
  border-radius: 0 var(--border-radius-mid) 0 0; }

.teaser.list .teaser-item header * {
  text-align: left; }

.teaser.list h3 {
  color: var(--color-txt); }

.teaser.list .teaser-item .categories p {
  font-family: var(--font-bold); }

.teaser.list .teaser-item p.c-phone {
  font-family: var(--font-regular); }

.teaser.list .teaser-item header p,
.teaser.list .teaser-item .categories p {
  font-size: calc(16 * var(--em-per-pixels));
  line-height: calc(22 * var(--em-per-pixels)); }

.teaser.list .teaser-item header p {
  margin-bottom: 0;
  font-family: var(--font-regular); }

.teaser.list p.occupancy span:before {
  left: -30px;
  height: 24px; }

.teaser.list .button-wrapper {
  display: flex;
  flex-flow: row wrap;
  row-gap: calc(var(--gap-row) / 2);
  column-gap: var(--gap-col); }

.teaser.list .button-wrapper::before,
.teaser.list .button-wrapper::after {
  content: none; }

/*========= TEASERLIST PREVIEV =========*/
.teaserlist.preview .teaser-item,
.teaserlist.preview .inner,
.teaserlist.preview .teaser-info,
.teaserlist.preview .teaser-item .abstract {
  min-height: 0; }

.teaserlist.preview .teaser-item {
  width: 100%;
  margin: 0 0 10px 0;
  border: 1px solid var(--lightgrey); }

.teaserlist.preview .teaser-item:last-child {
  margin-bottom: 0; }

.teaserlist.preview .teaser-img,
.teaserlist.preview .teaser-info {
  float: left;
  display: block; }

.teaserlist.preview .teaser-img,
.teaserlist.preview .teaser-img figure {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%; }

.teaserlist.preview .teaser-img {
  width: 16.6666666667%; }

.teaserlist.preview .teaser-img figure {
  width: 100%;
  padding-bottom: 0; }

.teaserlist.preview .teaser-info {
  width: 83.3333333333%;
  margin-left: 16.6666666667%; }

.teaserlist.preview .teaser-item.img .caption-body:before {
  content: none; }

.teaserlist.preview .wrapper-xs {
  padding: 10px 5%; }

.teaserlist.preview .teaser-item header,
.teaserlist.preview .teaser-item .abstract {
  position: relative;
  top: auto;
  float: left;
  width: 100%;
  margin: 0;
  padding: 0 190px 0 0;
  display: block;
  transform: none; }

.teaserlist.preview .teaser-title h3 {
  margin-top: 0; }

.teaserlist.preview .teaser-item .abstract {
  padding-bottom: 0; }

.teaserlist.preview .abstract p.contact {
  float: left;
  width: 100%;
  margin: 5px 0 0 0; }

.teaserlist.preview .abstract p.contact span {
  float: left;
  width: auto;
  font-family: var(--font-regular); }

.teaserlist.preview .abstract p.contact span:before {
  content: "•";
  float: left;
  padding: 0 5px;
  display: block; }

.teaserlist.preview .abstract p.contact:before {
  float: left;
  content: "\ea92";
  font-family: superduperfont;
  font-size: calc(18 * var(--em-per-pixels));
  display: block; }

#main .teaserlist.preview .button {
  position: absolute;
  z-index: 2;
  bottom: auto;
  top: 50%;
  right: 40px;
  left: auto;
  margin: -15px 0 0 0; }

.section-vacancies .teaserlist.preview .teaser-info {
  width: 100%;
  margin-left: 0; }

.section-vacancies .teaserlist.preview .wrapper-xs {
  padding: 10px 240px 10px 20px; }

@media only screen and (max-width: 100rem) {
  .teaserlist-container .main-wrapper {
    max-width: none;
    padding: 0 2.5%; } }

@media only screen and (max-width: 64rem) {
  .teaser.list .categories li {
    width: 100%;
    padding: 0 10px 10px 0;
    display: block; }
  .teaser.list .categories li:last-child {
    padding-bottom: 0; } }

@media only screen and (max-width: 60rem) {
  .teaser.list .teaser-img,
  .teaser.list .teaser-info {
    grid-column: span 6; }
  .teaser.list .teaser-img figure {
    height: auto;
    padding-bottom: 56.25%; }
  .teaser.list .teaser-info {
    height: auto; } }

/*========= TEASER TILES =========*/
.section-teaser.tiles {
  padding: 0; }

.section-heroslider + .section-teaser.tiles,
.section-pageheader + .section-teaser.tiles,
.section-teaser.tiles:first-child,
.section-article + .section-teaser.tiles,
section.bgc + .section-teaser.tiles,
section.bg-img + .section-teaser.tiles,
.section-teaser.tiles + section.bgc,
.section-teaser.tiles + section.bg-img {
  margin-top: 0; }

.section-teaser.tiles .section-header {
  padding-top: 40px; }

.tiles .teaser-wrapper {
  max-width: none;
  padding: 0;
  display: block; }

.teaser.tiles {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(6, 1fr); }

.tiles .teaser-item {
  width: 100%;
  grid-column: span 3;
  position: relative;
  float: left;
  height: auto;
  min-height: unset;
  padding-bottom: 0;
  margin: 0;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  border-top: 0;
  overflow: hidden; }

.tiles .teaser-item.full {
  grid-column: span 6; }

.tiles .teaser-item.img {
  height: 75vh;
  height: clamp(390px, 75vh, 720px); }

.tiles .teaser-item.bgc {
  z-index: 1; }

.tiles .teaser-item.quarter,
.tiles .teaser-item.onethird {
  grid-column: span 2; }

.tiles .teaser-item.twothird {
  grid-column: span 4; }

.career .teaser.tiles .teaser-item.half .wrapper-xs {
  padding: 0 5%; }

.tiles .teaser-item .inner {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 4;
  width: 100%;
  height: 100%; }

.tiles .no-img .inner,
.tiles .no-img .teaser-info,
.tiles .no-img .caption-body,
.tiles .no-img .caption {
  position: relative;
  top: auto;
  left: auto;
  width: 100%;
  height: auto;
  margin: 0;
  display: flex;
  transform: unset; }

.tiles .teaser-img,
.tiles .teaser-img figure {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding-bottom: 0; }

.tiles .teaser-info {
  padding: var(--vert-whitespace) 0;
  row-gap: var(--gap-row); }

.tiles .img .teaser-info {
  padding: 0; }

.teaser.tiles .teaser-info img {
  position: relative;
  visibility: visible; }

.full .teaser-info img,
.teaser-info img[class="align_center"] {
  margin: 0 auto;
  display: block; }

.teaser.tiles .caption {
  max-width: var(--max-width-s);
  padding: 0 40px;
  padding: 0 min(5%, 80px);
  margin: 0 auto; }

@media only screen and (max-width: 80rem) {
  .tiles .teaser-item.onethird,
  .tiles .teaser-item.twothird,
  .tiles .teaser-item.quarter {
    grid-column: span 3; }
  .teaser.tiles .half.img .teaser-info {
    padding-right: 0; } }

@media only screen and (max-width: 60rem) {
  .tiles .teaser-item,
  .tiles .teaser-item.half,
  .tiles .teaser-item.onethird,
  .tiles .teaser-item.twothird,
  .tiles .teaser-item.quarter {
    grid-column: span 6;
    width: 100%; }
  .teaser.tiles .teaser-item.no-img,
  .teaser.tiles .no-img .inner,
  .career .teaser.tiles .teaser-item.half {
    grid-column: span 6;
    position: relative;
    width: 100%;
    height: auto;
    min-height: 0;
    padding-bottom: 0;
    margin: 0; }
  .teaser.tiles figure {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-position: center; }
  .teaser.tiles .full .caption-body:before {
    width: 150%;
    opacity: 0.5; }
  .teaser.tiles .teaser-item .wrapper-xs {
    margin: 0; } }

.left .teaser-info,
.center .teaser-info,
.right .teaser-info {
  z-index: 1;
  overflow: visible; }

.center .teaser-info {
  width: 100%; }

#main .right .teaser-info * {
  text-align: right; }

.img .caption-body::before,
.caption-body.img::before,
.bg-img.w-txt .article-bg:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 200%;
  height: 200%;
  transform: translate(-66%, -50%); }

.bg-clear .caption-body::before {
  content: unset; }

#main .slide a.caption-body::before {
  top: 0;
  left: 0; }

.img .caption-wrapper {
  overflow: hidden; }

.bg-green .caption-body::before,
.bg-blue .caption-body::before,
.img .caption-wrapper.bg-clear::before {
  content: none; }

.left .teaser-info {
  right: auto;
  left: 0; }

.img .caption-body::before,
.caption-body.img::before,
.bg-img.w-txt .article-bg::before,
.bg-lightgrey #pageheader .caption-body::before {
  background-position: left bottom;
  background-image: radial-gradient(circle at center, rgba(0, 0, 0, 0.22) 15%, rgba(0, 0, 0, 0.11) 75%); }

.teaser-item.img .caption::before,
.boards .teaser-info::before {
  overflow: visible;
  background-image: radial-gradient(circle at center, rgba(0, 0, 0, 0.67) 0, rgba(0, 0, 0, 0) 100%);
  opacity: 0.7 !important; }

.teaser-item.img.transparent .caption-body:before {
  content: none; }

.center .teaser-info:before {
  left: -25%;
  width: 150%;
  background-image: linear-gradient(to right, rgba(var(--white-rgb), 0), rgba(var(--white-rgb), 0.5) 50%, rgba(var(--white-rgb), 0)); }

.right .teaser-info:before {
  left: auto;
  right: 0;
  background-image: linear-gradient(to left, rgba(var(--black-rgb), 0.6), rgba(var(--black-rgb), 0.35) 50%, rgba(var(--black-rgb), 0)); }

.slide.img .caption-body:before {
  content: none; }

/*========= SECTION GALLERY =========*/
.section-article .section-gallery {
  grid-column: span 12; }

.section-gallery {
  padding: 0 var(--gap-col) var(--vert-whitespace) var(--gap-col); }

.section-gallery .slider-wrapper {
  clear: both;
  padding: 0;
  border-right: 80px solid transparent; }

.section-gallery .slider {
  border-radius: var(--border-radius-min) 0 0 var(--border-radius-min);
  overflow: hidden; }

.section-gallery .slide {
  background-color: rgba(var(--lightgrey-rgb), 0.78); }

.section-gallery .slide figure {
  background-size: contain;
  background-position: center; }

.slide figcaption {
  position: absolute;
  bottom: 0;
  left: 0;
  width: auto;
  max-width: var(--max-width-xs);
  height: auto;
  padding: 5px 5%;
  border-radius: 0 20px 0 0; }

.slide figcaption * {
  padding: 0;
  margin-bottom: 0;
  color: var(--white);
  font-weight: 700;
  letter-spacing: 0.04em; }

.section-gallery .slider-nav {
  position: absolute;
  top: 0;
  right: -80px;
  z-index: 4;
  width: 80px;
  height: 100%;
  margin-top: 0;
  border-radius: 0 var(--border-radius-min) var(--border-radius-min) 0;
  background-color: var(--white);
  border-bottom: 80px solid var(--lightgrey);
  overflow: hidden; }

.section-gallery .slide-btn span,
.section-gallery .slide-btn span:before {
  width: 100%;
  text-align: center; }

.section-gallery .slide-btn.prev span:before {
  text-indent: -3px; }

.section-gallery .slide-btn.next span:before {
  text-indent: -2px; }

.section-gallery .slide-btn span {
  top: 50%;
  margin-top: -25px; }

#main .section-gallery .slide-btn.prev,
#main .section-gallery .slide-btn.next {
  position: absolute;
  left: 0;
  width: 100%;
  height: 50%;
  padding: 0;
  display: block;
  border-radius: unset; }

#main .section-gallery .slide-btn.prev span:before,
#main .section-gallery .slide-btn.next span:before {
  text-shadow: none; }

#main .section-gallery .slide-btn.prev {
  border-bottom: 1px solid var(--lightgrey); }

#main .section-gallery .slide-btn.prev {
  top: 0; }

#main .section-gallery .slide-btn.next {
  top: 50%; }

.section-gallery .slide-btn span:before {
  color: var(--color-txt) !important;
  opacity: 1 !important; }

#main .section-gallery .slider-dots {
  top: auto;
  bottom: -4px; }

.slider-thumbs {
  position: absolute;
  top: 0;
  right: 0 !important;
  z-index: 3;
  width: 100%;
  height: 100%;
  opacity: 0;
  display: none; }

.slider-thumbs .inner {
  float: left;
  width: 100%;
  height: 100%;
  display: block;
  background-color: var(--lightgrey);
  background-color: rgba(var(--lightgrey-rgb), 0.92);
  border-radius: var(--border-radius-min) 0 0 var(--border-radius-min);
  overflow: hidden; }

.slider-thumbs .thumb {
  position: relative;
  float: left;
  width: 25%;
  height: 33.3333333333%;
  /*padding-bottom: 21.43%;*/ }

.count-5 .slider-thumbs .thumb,
.count-6 .slider-thumbs .thumb {
  width: 33.3333333333%; }

.count-7 .slider-thumbs .thumb,
.count-8 .slider-thumbs .thumb {
  width: 25%; }

.slider-thumbs .thumb figure {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.thumbs-btn {
  position: absolute;
  bottom: 0;
  right: -80px;
  width: 80px;
  height: 80px;
  overflow: hidden; }

.thumbs-btn.button,
.thumbs-btn.button:after {
  border-radius: 0 0 var(--border-radius-min) 0; }

.thumbs-btn.button:hover {
  padding: 0; }

.thumbs-btn ul {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  width: 34px;
  height: 34px;
  margin: -17px 0 0 -17px; }

.thumbs-btn ul:after {
  content: "\ea4c";
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -23px 0 0 -23px;
  display: block;
  font: 46px/46px superduperfont;
  text-align: center;
  opacity: 0; }

.thumbs-btn.on ul:after {
  opacity: 1; }

.thumbs-btn li {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 34px;
  height: 15px;
  display: block; }

.thumbs-btn.on li {
  opacity: 0; }

.thumbs-btn li:first-child {
  bottom: auto;
  top: 0; }

.thumbs-btn li:before,
.thumbs-btn li:after {
  content: "";
  float: left;
  width: 15px;
  height: 15px;
  display: block;
  background-color: var(--white);
  border-radius: var(--border-radius-min); }

.thumbs-btn li:before {
  margin-right: 2px; }

.thumbs-btn li:after {
  margin-left: 2px; }

.thumbs-btn {
  z-index: 4;
  background-color: var(--color-txt); }

@media only screen and (max-width: 80rem) {
  .section-gallery .slider-wrapper,
  .slider-thumbs {
    border: none;
    padding: 0; }
  .slider-thumbs {
    padding: 0 50px 0 0; }
  .section-gallery .slider,
  .section-gallery .slider-nav,
  .slider-thumbs .inner,
  .thumbs-btn.button,
  .thumbs-btn.button:after {
    border-radius: unset; }
  .section-gallery .slider-nav {
    width: 50px;
    border-bottom: 50px solid var(--lightgrey); }
  .thumbs-btn {
    width: 50px;
    height: 50px; } }

@media only screen and (max-width: 64rem) {
  .slider-thumbs {
    padding: 0 0 50px 0; }
  #main .section-gallery .slider-nav {
    bottom: 0;
    display: block; }
  .section-gallery .slider-nav {
    position: relative;
    top: auto;
    right: auto;
    width: 100%;
    padding-right: 50px;
    display: block;
    border: none; }
  #main .section-gallery .slide-btn.prev,
  #main .section-gallery .slide-btn.next {
    position: relative;
    float: left;
    width: 50%;
    height: 50px;
    display: block;
    border: none; }
  #main .section-gallery .slide-btn.prev {
    border-right: 1px solid var(--lightgrey); } }

@media only screen and (max-width: 640px) {
  .section-gallery .slide figure {
    padding-bottom: 56.25%; }
  #main .section-gallery .slider-dots button {
    width: 30px;
    padding: 0; } }

/*========= PARTNER MAP =========*/
.section-gmap {
  position: relative;
  z-index: 4;
  padding: 0 var(--gap-col);
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start; }

.section-gmap .section-header {
  padding-top: var(--vert-whitespace);
  padding-bottom: var(--gap-row); }

.section-gmap .section-header:last-child {
  padding-bottom: var(--vert-whitespace); }

.section-gmap .iframe-container {
  padding-bottom: var(--vert-whitespace); }

.map-container {
  position: relative;
  width: 100%;
  max-width: 90rem;
  margin: 0 auto;
  height: 66vh;
  border-radius: var(--border-radius-min);
  overflow: hidden; }

#map * {
  font-family: var(--font-running-text) !important; }

.map {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block; }

.map-label {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 2;
  width: auto;
  max-width: 156px;
  padding: 10px 15px;
  display: inline-block;
  border-radius: 0 0 var(--border-radius-mid) var(--border-radius-mid);
  background-color: rgba(var(--lightgrey-rgb), 0.92);
  white-space: nowrap;
  transform: translateX(-50%);
  display: none; }

.contact .map-label {
  top: 0;
  left: 50%;
  margin-left: 0;
  border-radius: 0 0 var(--border-radius-mid) var(--border-radius-mid); }

.map-label * {
  display: inline-block;
  margin-bottom: 0;
  font: 16px/20px var(--font-bold);
  white-space: nowrap; }

.key {
  display: flex;
  flex-flow: row wrap;
  row-gap: 5px;
  column-gap: 20px; }

.key li {
  float: left;
  position: relative;
  display: block;
  line-height: 15px; }

.key li::before {
  content: "";
  position: relative;
  top: 2px;
  width: 15px;
  height: 15px;
  margin-right: 5px;
  display: inline-block;
  line-height: 53px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center; }

.key li:first-child::before {
  background-image: url("../img/map-icons/loc-icon-b.svg"); }

.key li:last-child::before {
  background-color: rgba(var(--color-one-rgb), 0.25);
  border: 1px solid var(--color-one);
  border-radius: 100%; }

.team-vacancy .key li:last-child,
.partner .key li:last-child,
.partner-branch .key li:last-child {
  display: block; }

/*========= CONTACT MAP =========*/
.section-gmap.contact {
  position: relative;
  z-index: 1;
  padding: 0;
  background-color: rgba(var(--lightgrey-rgb), 0.89); }

.section-gmap.contact:first-child {
  margin-top: 0; }

.section-gmap.contact:last-child {
  margin-bottom: 0; }

.section-gmap.contact .col {
  position: relative;
  width: 50%;
  height: auto;
  left: auto;
  right: auto;
  float: left;
  width: 50%;
  display: block;
  align-self: center; }

.section-gmap.contact .col.contact-info {
  padding: var(--vert-whitespace) 0; }

.section-gmap.contact .col.map-container {
  min-height: 540px; }

.section-gmap form .form-section {
  margin-bottom: 0; }

.iframe-container {
  position: relative;
  width: 100%;
  height: 100%;
  display: block; }

.iframe-container .inner {
  position: relative;
  width: 100%;
  padding-bottom: 42.756%;
  display: block;
  border-radius: 10px;
  overflow: hidden; }

.iframe-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden; }

#nav-check-places {
  position: absolute;
  float: left;
  width: 90%;
  max-width: var(--max-width-xs);
  bottom: 30px;
  left: 50%;
  padding: 0 15px 15px 15px;
  border-radius: var(--border-radius-mid);
  background-color: rgba(var(--color-txt-rgb), 0.9);
  transform: translateX(-50%); }

#nav-check-places .main-wrapper {
  padding: 0; }

#nav-check-places *,
#nav-check-places input::after {
  color: var(--white);
  border-color: var(--white); }

#nav-check-places .InputfieldCheckbox *,
#main-container #nav-check-places input[type="checkbox"] {
  font: 16px/30px quicksand-bold;
  color: var(--white);
  border-color: var(--white); }

#nav-check-places .InputfieldCheckbox {
  float: left;
  width: auto;
  padding: 10px 15px 0 0;
  display: block; }

@media only screen and (max-width: 64rem) {
  #main .section-gmap:last-child {
    padding-bottom: 0; }
  .iframe-container .inner {
    padding-bottom: 56.25%; } }

@media only screen and (max-width: 60rem) {
  .section-gmap.contact .col {
    width: 100%; }
  .map-container {
    height: auto; }
  .map-container .map {
    position: relative;
    padding-bottom: 75%; }
  .section-gmap.contact .contact-info {
    min-height: 0;
    margin: 0; }
  .section-gmap.contact .wrapper-xs {
    max-width: none; }
  .iframe-container .inner {
    padding-bottom: 75%; } }

@media only screen and (max-width: 40rem) {
  .map-container .map {
    padding-bottom: 133%; }
  #nav-check-places {
    position: relative;
    width: 90%;
    z-index: 2;
    max-width: var(--max-width-xs);
    bottom: auto;
    left: auto;
    margin: 20px 5% 40px 5%;
    transform: translateX(0); } }

@media only screen and (max-width: 480px) {
  .iframe-container .inner {
    padding-bottom: 100%; } }

/*============= LOGO-SLIDER =============*/
.section-logogallery {
  z-index: 1;
  background-color: var(--white); }

.logo-gallery-wrapper {
  position: relative;
  width: 100%;
  display: block; }

.logo-gallery {
  position: relative;
  width: 100%;
  margin-top: 1px;
  display: block;
  border-left: 1px solid var(--grey);
  border: none;
  display: flex;
  flex-flow: row wrap;
  row-gap: var(--gap-row);
  column-gap: var(--gap-row);
  justify-content: center; }

.logo-gallery .logo-item {
  position: relative;
  float: left;
  width: 25%;
  height: auto;
  margin-top: -1px;
  display: block;
  border-top: 1px solid var(--grey);
  border-right: 1px solid var(--grey);
  border-bottom: 1px solid var(--grey);
  overflow: hidden;
  width: auto;
  border: none; }

.logo-gallery a::after {
  content: none; }

.logo-gallery .logo {
  position: relative;
  z-index: 1;
  width: 100%;
  height: auto;
  max-width: none;
  margin: 0;
  display: block;
  border: 20px solid transparent;
  width: auto;
  border: 10px solid transparent; }

.logo-gallery .logo figure {
  height: 120px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  height: auto; }

.logo-gallery .logo-item:hover .logo {
  -webkit-filter: grayscale(0);
  filter: grayscale(0); }

.logo-gallery .logo img {
  width: 100%;
  display: block;
  width: auto;
  height: 120px; }

.logo-label {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 10px;
  opacity: 0;
  display: flex;
  flex-flow: row wrap;
  align-content: center;
  justify-content: center;
  background-color: rgba(var(--color-one-rgb), 0.92);
  hyphens: auto;
  border-radius: var(--border-radius-min);
  text-align: center; }

.logo-label * {
  margin-bottom: 0;
  font: 0.875rem/1.25em var(--font-bold);
  color: var(--white);
  text-align: center; }

.logo-gallery .logo-item:hover .logo,
.logo-gallery .logo-item:active .logo {
  z-index: 1; }

.logo-gallery .logo-item:hover .logo-label,
.logo-gallery .logo-item:active .logo-label {
  z-index: 2;
  opacity: 1; }

#main .logo-gallery .button {
  position: absolute;
  bottom: 0;
  left: 0;
  border-radius: 0 var(--border-radius-mid) 0 0; }

#main .logo-gallery .button:after {
  border-radius: unset; }

@media only screen and (max-width: 1152px) {
  .section-partner .section-header,
  .logo-gallery-wrapper {
    max-width: none; }
  .logo-gallery {
    border-left: none; }
  .logo-gallery .logo img {
    height: 80px; }
  .logo-gallery a .logo {
    -webkit-filter: grayscale(0);
    filter: grayscale(0); } }

@media only screen and (max-width: 64rem) {
  .logo-label * {
    font-size: 0.75rem; } }

@media only screen and (min-width: 40rem1) {
  .logo-gallery .logo figure {
    background: transparent !important; } }

@media only screen and (max-width: 40rem) {
  .logo-gallery {
    row-gap: var(--gap-row);
    column-gap: var(--gap-col); }
  .logo-gallery .logo-item,
  .logo-gallery .logo,
  .logo-gallery .logo figure {
    width: 100%;
    height: auto; }
  .logo-gallery .logo-item {
    width: calc(50% - var(--gap-col)); }
  .logo-gallery .logo figure {
    height: 80px; }
  .logo-gallery .logo figure img {
    display: none; }
  #main .logo-gallery .logo-item a,
  #main .logo-gallery .logo-item:nth-child(2n + 0) a {
    border-left: none;
    border-right: none; } }

@media only screen and (max-width: 360px) {
  .logo-gallery {
    row-gap: calc(var(--gap-row) / 2);
    column-gap: var(--gap-col); }
  .logo-gallery .logo-item {
    width: 100%; } }

/* ============ INFOGRAPHIC ============ */
.infographic {
  float: left;
  width: 100%;
  display: flex;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-box;
  display: -ms-flexbox;
  flex-flow: row wrap;
  -webkit-flex-flow: row wrap;
  /*border: 1px solid var(--color-two);*/
  background-color: var(--lightgrey);
  border-radius: var(--border-radius-mid); }

.infographic li {
  position: relative;
  float: left;
  width: 33.3333333333%;
  padding-bottom: 33.3333333333%;
  display: block;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  border-left: 1px solid var(--lightgrey); }

.infographic li:first-child {
  border-left: none; }

.infographic li.img::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--black);
  opacity: 0.25; }

.infographic li.img * {
  color: var(--white); }

.infographic li.img header {
  padding: 0 5%; }

.infographic .inner {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  transform: translateY(-50%); }

.infographic .wrapper-xs {
  padding: 0 5%; }

.ig-item-img {
  width: 100%;
  display: block; }

.ig-item-img img {
  position: relative;
  width: 100%;
  max-width: 120px;
  margin: 0 auto;
  display: block;
  filter: grayscale(20%);
  visibility: visible; }

.infographic header {
  text-align: center; }

.infographic .ig-label,
.infographic .counter {
  width: 100%;
  margin-bottom: 0;
  display: block;
  font-weight: 800;
  border: none; }

/*.infographic .ig-label * { margin-bottom: 0; }*/
.infographic p {
  font-family: var(--font-regular);
  font-size: calc(26 * var(--em-per-pixels));
  line-height: calc(20 * var(--em-per-pixels)); }

.infographic .counter span {
  font-family: var(--font-bold);
  font-size: calc(36 * var(--em-per-pixels));
  line-height: calc(18 * var(--em-per-pixels)); }

.infographic .counter {
  overflow: hidden; }

.infographic .graph,
.infographic .graph span,
.infographic .graph:before,
.infographic .graph:after {
  border-radius: 50%; }

.infographic .graph {
  position: relative;
  width: 180px;
  height: 180px;
  margin: 0 auto 20px auto;
  display: block;
  box-sizing: content-box;
  border: 5px solid var(--lightgrey); }

.infographic .graph span,
.infographic h5 svg,
.infographic h5 circle,
.infographic .graph:before,
.infographic .graph:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.infographic .graph span {
  z-index: 2;
  line-height: 180px; }

.infographic .graph span:after {
  content: "%";
  display: inline-block; }

.infographic h5 svg,
.infographic h5 circle {
  z-index: 3; }

.infographic .graph svg {
  transform: rotate(-90deg);
  overflow: visible; }

.infographic .graph circle {
  fill: transparent;
  stroke-dashoffset: 0;
  stroke: #666;
  stroke-width: 10px;
  transition-property: stroke-dashoffset;
  transition-timing-function: linear; }

.infographic .graph:before,
.infographic .graph:after {
  content: ""; }

.infographic .graph:before {
  z-index: 0; }

.infographic .graph:after {
  z-index: 2;
  border: 5px solid var(--lightgrey);
  box-sizing: border-box; }

@media only screen and (max-width: 1280px) {
  .section-infographic .main-wrapper {
    padding: 0 40px !important; } }

@media only screen and (max-width: 960px) {
  .section-infographic,
  .section-infographic .main-wrapper {
    padding: 0 !important; }
  .infographic {
    border-radius: unset; }
  .infographic li {
    width: 100%;
    padding: 20px 0;
    font-size: 14px;
    border-left: none;
    border-top: 1px solid var(--lightgrey); }
  .infographic li:first-child {
    border-top: none; }
  .infographic .inner {
    position: relative;
    top: auto;
    left: auto;
    transform: none; } }

/*============= LOGO TEASER =============*/
#main-container #main .section-logoteaser {
  padding: 0; }

.logoteaser-wrapper {
  position: relative;
  width: 100%;
  padding: 0;
  display: block; }

.logoteaser {
  position: relative;
  width: 100%;
  margin-top: 1px;
  display: block;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-flow: row wrap;
  align-content: center;
  border-left: 1px solid var(--lightgrey); }

.logoteaser li {
  position: relative;
  float: left;
  width: 33.3333333333%;
  margin-top: -1px;
  display: block;
  border-top: 1px solid var(--lightgrey);
  border-right: 1px solid var(--lightgrey);
  border-bottom: 1px solid var(--lightgrey);
  overflow: hidden; }

.logoteaser .logo {
  width: 100%;
  max-width: none;
  padding-bottom: 42.86%;
  padding-bottom: 32.145%;
  margin: 0;
  display: block;
  background-color: transparent;
  /*background-size: auto 80%;*/
  background-size: auto 66%;
  background-repeat: no-repeat;
  background-position: center; }

.logoteaser .logo img {
  width: 100%;
  display: block;
  display: none; }

.logoteaser .logo-label {
  position: relative;
  width: 100%;
  padding: 0 5% 30px 5%;
  display: block;
  text-align: center;
  opacity: 1; }

.logoteaser .logo-label *:last-child {
  margin-bottom: 0; }

@media only screen and (max-width: 1152px) {
  .logoteaser li {
    width: 33.3333333333%; } }

@media only screen and (max-width: 768px) {
  .logoteaser li {
    width: 50%; }
  #main-container #main .section-logoteaser {
    padding: 2.5% 0; }
  .logoteaser-wrapper {
    padding: 0 2.5%; } }

@media only screen and (max-width: 640px) {
  .logoteaser li {
    width: 100%; } }

.teaser.cards.carousel .owl-stage {
  float: left;
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start; }

#main .teaser.cards.carousel {
  width: 100%;
  margin: 0;
  border: none; }

#main .teaser.cards.carousel .teaser-item {
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  border: 1px solid var(--lightgrey);
  border-radius: var(--border-radius-std);
  transition: all 750ms cubic-bezier(0.165, 0.84, 0.44, 1); }

#main .teaser.cards.carousel .active .teaser-item {
  opacity: 1; }

@media only screen and (max-width: 768px) {
  #main .teaser.cards.carousel .teaser-item {
    height: 100%;
    margin: 0; } }

.section-html {
  background-color: var(--white); }

.section-html .html-container {
  position: relative;
  z-index: 1;
  padding: 0;
  max-width: none; }

/* ============ IFRAME ============ */
.section-iframe {
  position: relative;
  z-index: 1;
  height: 100vh;
  padding: 0;
  margin: calc(var(--menu-height) * -1) 0 0 0;
  border-top: var(--menu-height) solid transparent; }

.section-iframe iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important; }

/* ============ LOCATIONS / VACANCIES ============ */
.section-teaser.career .section-header * {
  float: none;
  margin: 0;
  width: auto; }

.section-teaser.career .section-header :is(.wrapper-s, ol, ul, .pw-edit-orig) {
  display: flex;
  flex-flow: column wrap;
  justify-content: center;
  align-items: center; }

.section-teaser.career .section-header :is(.wrapper-s, .pw-edit-orig) {
  row-gap: var(--gap-txt);
  margin: 0 auto; }

.section-teaser.career .section-header :is(ol, ul) {
  row-gap: 0.625rem;
  align-items: flex-start !important; }

.section-teaser.career .section-header :is(h1, h2, h3, h4, h5, h6, p) {
  text-align: center; }

.teaser.list.locations {
  display: flex;
  flex-flow: row wrap;
  row-gap: 0.625rem;
  max-width: var(--max-width-m);
  padding: 0 var(--gap-col);
  margin: 0 auto; }

.teaser.list.locations .teaser-item {
  width: 100%;
  padding: calc(var(--gap-row) / 2);
  border: 1px solid var(--lightgrey); }

.teaser.list .teaser-item.location {
  position: relative;
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  row-gap: calc(var(--gap-row) / 2);
  background-color: var(--white); }

.teaser.list .teaser-item.location {
  background-color: var(--white); }

.teaser-item.location .map {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  width: 100%;
  height: auto !important;
  aspect-ratio: 16 / 9;
  border-radius: var(--border-radius-std);
  overflow: hidden;
  opacity: 1; }

.teaser-item.location figure {
  width: 100%;
  height: auto;
  padding-bottom: 56.25%;
  overflow: hidden; }

.teaser-item.location article :is(figure, picture) {
  padding-bottom: 0; }

.teaser-item.location figure img {
  display: none; }

.teaser-item.location article img {
  display: block; }

.teaser.list.locations article,
.teaser.list.locations article header .inner,
.teaser.list.locations article .toggle-content,
.teaser.list.locations article .toggle-container {
  padding-left: 0 !important;
  padding-right: 0 !important;
  background-color: transparent; }

.teaser.list.locations article header::before,
.teaser.list.locations article header::after {
  content: unset; }

.teaser.list.locations article header .toggle-btn {
  background-color: transparent; }

.teaser.list.vacancies {
  padding: 0;
  row-gap: 0.625rem; }

.teaser.list .teaser-item.vacancy {
  --color-txt: var(--white);
  background-color: transparent;
  border: unset;
  padding: 0;
  overflow: hidden;
  cursor: pointer;
  transition: all 350ms ease-in-out; }

.teaser.list .teaser-item.vacancy * {
  background: transparent;
  background-clip: unset;
  -webkit-background-clip: unset;
  -webkit-text-fill-color: var(--white); }

.teaser-item.vacancy .button {
  float: left;
  clear: both;
  width: 100%;
  height: auto;
  padding: 0.75rem 0.75rem 0.75rem 1.875rem;
  display: block;
  text-align: left;
  white-space: wrap;
  border-radius: var(--border-radius-min);
  text-transform: none; }

@media (hover: hover) and (pointer: fine) {
  .teaser-item.vacancy .button:hover {
    padding-right: 2.1875rem; } }

.teaser-item.vacancy .button span {
  position: relative; }

.teaser-item.vacancy .button span::before {
  left: -22px;
  top: 50%;
  transform: translateY(-50%);
  opacity: 1; }

.teaser-item.vacancy .button span {
  padding: 0 !important; }

.teaser-item.vacancy .button,
.teaser-item.vacancy .button * {
  font-size: var(--button-fontsize);
  line-height: 1.25em; }

.teaser-item.vacancy .button::after {
  border-radius: var(--border-radius-min); }

.teaser.list .teaser-item.vacancy:hover header * {
  white-space: nowrap; }

@media only screen and (max-width: 40rem) {
  .teaser.list.locations {
    padding: 0;
    row-gap: unset; }
  .teaser.list .teaser-item.location {
    border-radius: unset;
    border: unset; } }

.tns-outer {
  padding: 0 !important; }
  .tns-outer [hidden] {
    display: none !important; }
  .tns-outer [aria-controls],
  .tns-outer [data-action] {
    cursor: pointer; }

.tns-slider {
  -webkit-transition: all 0s;
  -moz-transition: all 0s;
  transition: all 0s; }
  .tns-slider > .tns-item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }

.tns-horizontal.tns-subpixel {
  white-space: nowrap; }
  .tns-horizontal.tns-subpixel > .tns-item {
    display: inline-block;
    vertical-align: top;
    white-space: normal; }

.tns-horizontal.tns-no-subpixel:after {
  content: "";
  display: table;
  clear: both; }

.tns-horizontal.tns-no-subpixel > .tns-item {
  float: left; }

.tns-horizontal.tns-carousel.tns-no-subpixel > .tns-item {
  margin-right: -100%; }

.tns-no-calc {
  position: relative;
  left: 0; }

.tns-gallery {
  position: relative;
  left: 0;
  min-height: 1px; }
  .tns-gallery > .tns-item {
    position: absolute;
    left: -100%;
    -webkit-transition: transform 0s, opacity 0s;
    -moz-transition: transform 0s, opacity 0s;
    transition: transform 0s, opacity 0s; }
  .tns-gallery > .tns-slide-active {
    position: relative;
    left: auto !important; }
  .tns-gallery > .tns-moving {
    -webkit-transition: all 0.25s;
    -moz-transition: all 0.25s;
    transition: all 0.25s; }

.tns-autowidth {
  display: inline-block; }

.tns-lazy-img {
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  transition: opacity 0.6s;
  opacity: 0.6; }
  .tns-lazy-img.tns-complete {
    opacity: 1; }

.tns-ah {
  -webkit-transition: height 0s;
  -moz-transition: height 0s;
  transition: height 0s; }

.tns-ovh {
  overflow: hidden; }

.tns-visually-hidden {
  position: absolute;
  left: -10000em; }

.tns-transparent {
  opacity: 0;
  visibility: hidden; }

.tns-fadeIn {
  opacity: 1;
  filter: alpha(opacity=100);
  z-index: 0; }

.tns-normal,
.tns-fadeOut {
  opacity: 0;
  filter: alpha(opacity=0);
  z-index: -1; }

.tns-vpfix {
  white-space: nowrap; }
  .tns-vpfix > div,
  .tns-vpfix > li {
    display: inline-block; }

.tns-t-subp2 {
  margin: 0 auto;
  width: 310px;
  position: relative;
  height: 10px;
  overflow: hidden; }

.tns-t-ct {
  width: 2333.3333333333%;
  width: -webkit-calc(100% * 70 / 3);
  width: -moz-calc(100% * 70 / 3);
  width: calc(100% * 70 / 3);
  position: absolute;
  right: 0; }
  .tns-t-ct:after {
    content: "";
    display: table;
    clear: both; }
  .tns-t-ct > div {
    width: 1.4285714286%;
    width: -webkit-calc(100% / 70);
    width: -moz-calc(100% / 70);
    width: calc(100% / 70);
    height: 10px;
    float: left; }

.tns-inner {
  width: 100%;
  display: block;
  overflow: hidden; }

/*============= CUSTOM SLIDER STYLES =============*/
.tns-outer {
  position: relative;
  width: 100%;
  grid-column: span 6;
  display: block; }

/*----- TNS ITEM -----*/
.tns-item a {
  color: #fff; }

.tns-item a.caption-wrapper:before,
.tns-item .wrapper-s:after {
  transition: all 350ms ease; }

.tns-item a.caption-wrapper {
  position: absolute;
  bottom: auto;
  top: 50%;
  left: 5vh;
  width: 50vh;
  height: 50vh;
  margin-top: -25vh;
  text-align: center; }

.tns-item a.caption-wrapper:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 50%;
  background-image: linear-gradient(to right, rgba(var(--color-one-rgb), 0.92) 25%, rgba(var(--color-one-light-rgb), 0.92) 125%); }

.tns-item a.caption-wrapper:hover:before {
  transform: scale(1.125), rotate(0.01deg); }

.tns-item .wrapper-s:after {
  position: absolute;
  bottom: -60px;
  left: -20px;
  height: 50px;
  width: 100%;
  margin: 20px auto 0 auto;
  display: block;
  font-family: superduperfont;
  font-size: 50px;
  line-height: 50px;
  color: #fff;
  text-align: center;
  opacity: 0; }

.tns-item .wrapper-s:hover:after {
  opacity: 1;
  left: 0; }

.tns-item a.caption-wrapper .wrapper-s {
  max-width: 50vh;
  padding: 0 5vh; }

.tns-item a.caption-wrapper .wrapper-s * {
  font-size: 3.2vh;
  text-align: center; }

.tns-item figcaption {
  position: absolute;
  bottom: 0;
  left: 0;
  width: auto;
  max-width: var(--max-width-xs);
  height: auto;
  padding: 5px 5%;
  border-radius: 0 20px 0 0; }

.tns-item figcaption * {
  padding: 0;
  margin-bottom: 0;
  color: var(--white);
  font-weight: 700;
  letter-spacing: 0.04em; }

@media only screen and (max-width: 960px) {
  .tns-item a.caption-wrapper {
    left: 5vw;
    width: 50vw;
    height: 50vw;
    margin-top: -25vw; }
  .tns-item a.caption-wrapper .wrapper-s {
    max-width: 50vw;
    padding: 0 5vw; }
  .tns-item a.caption-wrapper .wrapper-s * {
    font-size: 3.2vw; } }

@media only screen and (max-width: 640px) {
  .tns-item a.caption-wrapper {
    left: 50%;
    width: 60vw;
    height: 60vw;
    margin-top: -30vw;
    transform: translateX(-50%); }
  .tns-item a.caption-wrapper .wrapper-s {
    max-width: 60vw;
    padding: 0 5vw; }
  .tns-item a.caption-wrapper .wrapper-s * {
    font-size: 4vw; } }

/*----- SLIDE IMAGES -----*/
/*----- BROWSER SUPPORT ??? -----*/
/*----- TNS NAV -----*/
.tns-nav {
  position: absolute;
  bottom: calc(calc(var(--gap-row) / 2) * -1);
  left: 50%;
  z-index: 3;
  width: auto;
  height: 0;
  margin: 0 auto;
  display: flex;
  flex-flow: row wrap;
  row-gap: 0.3125rem;
  column-gap: 0.3125rem;
  text-align: center;
  transform: translateX(-50%); }

.section-gallery .tns-nav {
  bottom: 1.875rem; }

.tns-nav button {
  position: relative;
  width: 60px;
  height: 6px;
  padding: 0;
  margin: 0;
  display: inline-block;
  background-color: var(--lightgrey);
  border: 1px solid var(--lightgrey);
  overflow: hidden;
  border-radius: 3px;
  opacity: 0.75; }

.tns-nav button:hover {
  opacity: 1; }

@media only screen and (max-width: 64rem) {
  .tns-nav button {
    width: 30px; } }

.tns-nav button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-one);
  opacity: 0; }

.tns-nav button.tns-nav-active::before {
  animation: ani-bar 10000ms linear normal;
  opacity: 1; }

.tns-nav button:hover::before,
.stoped .tns-nav button.tns-nav-active::before {
  width: 100% !important;
  opacity: 1;
  animation: none; }

.stoped button::before,
.stoped button.tns-nav-active::before {
  animation: none; }

.stoped button.tns-nav-active::before {
  width: 100%; }

.slider-dot.active:before,
.slider-dot:hover:before {
  opacity: 1; }

@media only screen and (max-width: 1023px) {
  .tns-nav {
    grid-column: span 12;
    display: flex;
    flex-flow: row wrap;
    align-content: center;
    justify-content: center; }
  #pageheader .tns-nav {
    position: absolute;
    order: -1;
    margin-top: calc(var(--gap-row) / 2);
    padding-top: 42.86%; }
  .tns-nav button.tns-nav-active:before {
    width: 100% !important;
    opacity: 1 !important; } }

@media only screen and (max-width: 64rem) {
  #pageheader .tns-nav {
    padding-top: 56.25%; } }

@media only screen and (max-width: 767px) {
  .tns-nav {
    width: 100%;
    padding-right: 0; } }

/*----- TNS CONTROLS -----*/
.tns-controls {
  position: absolute;
  bottom: 0.625rem;
  left: auto;
  right: 0.625rem;
  z-index: 5;
  width: auto;
  height: 0;
  margin: 0 auto;
  display: flex;
  flex-flow: row wrap;
  row-gap: 0.625rem;
  column-gap: 0.625rem; }

.tns-controls button {
  width: 3.125rem;
  height: 3.125rem;
  transform: translateY(-100%);
  background: transparent; }

.slide-btn.prev,
.slide-btn.next {
  position: absolute;
  background: transparent; }

.slide-btn.prev {
  bottom: 0;
  left: 0; }

.slide-btn.next {
  top: 0;
  right: 0; }

.slide-btn.prev:after,
.slide-btn.next:after {
  content: none; }

.slide-btn.prev span:before,
.slide-btn.next span:before {
  color: var(--white);
  font-size: 3.75rem;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.35);
  opacity: 0.75; }

article .slide-btn.prev span:before,
article .slide-btn.next span:before {
  font-size: 2.5rem; }

@media only screen and (max-width: 1024px) {
  .slide-btn.prev span:before,
  .slide-btn.next span:before {
    font-size: 40px; } }

.slide-btn.prev:hover span:before,
.slide-btn.next:hover span:before {
  opacity: 1; }

/*---------- SECTION GALLERY ----------*/
.section-article .section-gallery {
  grid-column: span 12; }

.section-gallery {
  z-index: 1; }

article + .section-gallery {
  padding-top: 0; }

.section-gallery .slider-wrapper {
  position: relative;
  width: 100%;
  clear: both;
  padding: 0;
  display: block;
  border-right: 80px solid transparent; }

.section-gallery .slider {
  border-radius: var(--border-radius-min) 0 0 var(--border-radius-min);
  overflow: hidden; }

.section-gallery .slide {
  background-color: rgba(var(--lightgrey-rgb), 0.78); }

.section-gallery .slide figure {
  background-size: contain;
  background-position: center; }

.section-gallery :is(.slider-nav, .tns-controls) {
  position: absolute;
  top: 0;
  right: -80px;
  z-index: 4;
  width: 80px;
  height: 100%;
  margin-top: 0;
  border-radius: 0 var(--border-radius-min) var(--border-radius-min) 0;
  background-color: var(--white);
  border-bottom: 80px solid var(--lightgrey);
  overflow: hidden; }

.section-gallery .slide-btn.prev span:before {
  text-indent: -3px; }

.section-gallery .slide-btn.next span:before {
  text-indent: -2px; }

.section-gallery :is(.slider-nav button, .tns-controls button) {
  position: absolute;
  left: 0;
  width: 100%;
  height: 50%;
  padding: 0;
  display: block;
  border-radius: unset; }

.section-gallery .slide-btn.prev span:before,
.section-gallery .slide-btn.next span:before {
  text-shadow: none;
  font-size: 2.75rem; }

.section-gallery .tns-controls button[data-controls="prev"] {
  top: 100%; }

.section-gallery .tns-controls button[data-controls="next"] {
  top: 50%;
  border-bottom: 1px solid var(--lightgrey); }

.section-gallery .tns-controls button .slide-btn {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0; }

.section-gallery .tns-controls button .slide-btn span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

.section-gallery .slide-btn span:before {
  color: var(--color-txt) !important;
  opacity: 1 !important; }

.section-gallery .slider-dots {
  top: auto;
  bottom: -4px; }

.slider-thumbs {
  position: absolute;
  top: 0;
  right: 0 !important;
  z-index: 3;
  width: 100%;
  height: 100%;
  opacity: 0;
  display: none; }

.slider-thumbs .inner {
  float: left;
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  column-gap: 0.25rem;
  row-gap: 0.25rem;
  background-color: var(--lightgrey);
  background-color: rgba(var(--lightgrey-rgb), 0.92);
  border-radius: var(--border-radius-min) 0 0 var(--border-radius-min);
  overflow-y: scroll;
  scrollbar-color: var(--color-one) var(--lightgrey);
  scrollbar-width: thin;
  border: 2px solid transparent; }

.slider-thumbs .inner::-webkit-scrollbar {
  width: 0.25rem; }

.slider-thumbs .inner::-webkit-scrollbar-track {
  background-color: var(--lightgrey); }

.slider-thumbs .inner::-webkit-scrollbar-thumb {
  background-color: var(--color-one); }

.slider-thumbs .thumb {
  grid-column: span 2;
  position: relative;
  float: left;
  width: 100%;
  height: auto;
  cursor: pointer; }

.slider-thumbs .thumb::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0;
  background-color: var(--color-one); }

.slider-thumbs .thumb:hover::after,
.slider-thumbs .thumb.tns-nav-active::after {
  height: 0.25rem; }

.slider-thumbs .thumb figure {
  position: relative;
  top: auto;
  left: auto;
  width: 100%;
  height: auto;
  padding-bottom: 56.25%; }

.thumbs-btn {
  position: absolute;
  bottom: 0;
  right: -80px;
  width: 80px;
  height: 80px;
  overflow: hidden; }

.thumbs-btn.button,
.thumbs-btn.button:after {
  border-radius: 0 0 var(--border-radius-min) 0; }

.thumbs-btn.button:hover {
  padding: 0; }

.thumbs-btn ul {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  width: 34px;
  height: 34px;
  margin: -17px 0 0 -17px; }

.thumbs-btn ul:after {
  content: "\ea4c";
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -23px 0 0 -23px;
  display: block;
  font: 46px/46px superduperfont;
  text-align: center;
  opacity: 0; }

.thumbs-btn.on ul:after {
  opacity: 1; }

.thumbs-btn li {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 34px;
  height: 15px;
  display: block; }

.thumbs-btn.on li {
  opacity: 0; }

.thumbs-btn li:first-child {
  bottom: auto;
  top: 0; }

.thumbs-btn li:before,
.thumbs-btn li:after {
  content: "";
  float: left;
  width: 15px;
  height: 15px;
  display: block;
  background-color: var(--white);
  border-radius: var(--border-radius-min); }

.thumbs-btn li:before {
  margin-right: 2px; }

.thumbs-btn li:after {
  margin-left: 2px; }

.thumbs-btn {
  z-index: 4;
  background-color: var(--color-txt); }

@media only screen and (max-width: 80rem) {
  .section-gallery .slider-wrapper {
    border-width: 50px; }
  .section-gallery :is(.slider-nav, .tns-controls, .thumbs-btn) {
    right: -50px; }
  .section-gallery :is(.slider, .slider-nav),
  .slider-thumbs .inner,
  .thumbs-btn.button,
  .thumbs-btn.button:after {
    border-radius: unset; }
  .section-gallery :is(.slider-nav, .tns-controls) {
    width: 50px;
    border-bottom: 50px solid var(--lightgrey); }
  .thumbs-btn {
    width: 50px;
    height: 50px; } }

@media only screen and (max-width: 64rem) {
  .section-gallery .slider-wrapper {
    border-right: none;
    border-bottom: 50px solid transparent; }
  .section-gallery .slider-nav {
    bottom: 0;
    display: block; }
  .section-gallery :is(.slider-nav, .tns-controls) {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    width: 100%;
    padding-right: 50px;
    display: block;
    border: 1px solid var(--lightgrey); }
  .section-gallery :is(.slider-nav button, .tns-controls button) {
    position: relative;
    float: left;
    width: 50%;
    height: 50px;
    display: block;
    border: none;
    transform: unset; }
  .section-gallery .tns-controls button[data-controls="prev"] {
    top: auto;
    border-right: 1px solid var(--lightgrey); }
  .section-gallery .tns-controls button[data-controls="next"] {
    top: auto;
    border-bottom: none; }
  .section-gallery .thumbs-btn {
    right: 0; }
  .slider-thumbs {
    border-bottom: 50px solid transparent; } }

@media only screen and (max-width: 640px) {
  .section-gallery .slide figure {
    padding-bottom: 56.25%; }
  #main .section-gallery .slider-dots button {
    width: 30px;
    padding: 0; } }

/*---------- HEROSLIDER ----------*/
.section-heroslider,
.section-heroslider .wrapper-l {
  padding: 0 !important; }

.section-heroslider {
  position: relative;
  z-index: 5; }

.slide figure {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 75vh;
  min-height: 720px;
  display: block; }

.slide figure img {
  position: absolute;
  top: 0;
  left: 0;
  display: none; }

.section-heroslider .tns-controls {
  right: auto;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: var(--max-width-m);
  padding: 0 var(--gap-col);
  justify-content: flex-end;
  column-gap: 1.25rem; }

.section-heroslider .tns-controls button {
  position: relative;
  left: -20px;
  bottom: 0.9375rem;
  transform: translateY(-100%); }

.section-heroslider .tns-controls :is(button, .button, .button span),
#main .section-heroslider .tns-controls .button span::before {
  width: 3.75rem;
  height: 3.75rem;
  padding: 0;
  font-size: 3.125rem;
  line-height: 3.5rem;
  text-align: center; }

.section-heroslider .tns-controls .button {
  border: 2px solid rgba(var(--white-rgb), 0.75); }

.section-heroslider .tns-controls .button:hover {
  border: 2px solid rgba(var(--white-rgb), 1); }

.section-heroslider .tns-controls .button.next span:before {
  text-indent: 5px; }

@media only screen and (max-width: 100rem) {
  .section-heroslider .tns-controls {
    padding: 0; } }

@media only screen and (max-width: 80rem) {
  .slider .slide.img.cpt-std .wrapper-s {
    padding-right: 0; }
  .slider .slide figure {
    min-height: 0;
    height: auto;
    padding-bottom: 56.25%; } }

@media only screen and (max-width: 1152px) {
  .slider .slide figure {
    min-height: 0;
    height: auto;
    padding-bottom: 56.25%; } }

@media only screen and (max-width: 60rem) {
  .section-heroslider .tns-controls {
    display: none; }
  .slider .slide figure,
  .slide figure {
    padding-bottom: 75%; } }

@media only screen and (max-width: 60rem) {
  .slider .slide.img.cpt-std .wrapper-s {
    width: calc(100% - var(--gap-col));
    padding: 25px var(--gap-col) 25px var(--gap-col);
    margin-right: var(--gap-col);
    display: inline-block; }
  .slider .slide.img.cpt-std .wrapper-s:before {
    border-radius: 0 var(--border-radius-mid) 0 0; }
  .slider .slide .button {
    position: relative;
    top: auto;
    bottom: 0;
    right: auto;
    left: 0;
    padding: 0 5% !important;
    margin-top: 20px !important; } }

@media only screen and (max-width: 40rem) {
  .slider .slide figure {
    padding-bottom: 100%; } }

/**
 * Owl Carousel v2.2.1
 * Copyright 2013-2017 David Deutsch
 * Licensed under  ()
 */
/*
 *  Owl Carousel - Core
 */
.section-slider {
  padding-top: 0 !important; }

.slider,
.carousel {
  /*display: none;*/
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }

/*.carousel { padding-bottom: 40px; }*/
.owl-stage {
  position: relative;
  -ms-touch-action: pan-Y;
  backface-visibility: hidden;
  /* fix firefox animation glitch */ }

.owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

.owl-stage-outer {
  position: relative;
  overflow: hidden;
  /* fix for flashing background */
  /*-webkit-transform: translate3d(0px, 0px, 0px);*/ }

.carousel .owl-stage-outer {
  overflow: visible; }

.owl-wrapper,
.owl-item,
.owl-item .slide,
.slider-dot {
  backface-visibility: hidden;
  transform: translate3d(0, 0, 0); }

.owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none; }

.owl-item .slide {
  position: relative;
  float: left;
  width: 100%;
  display: block; }

.slide img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: block;
  visibility: hidden; }

.carousel .owl-item .slide {
  padding: 0 40px;
  transform: scale(0.9);
  opacity: 0.5; }

.carousel .owl-item.active .slide {
  transform: scale(1);
  opacity: 1; }

.owl-item img {
  display: none;
  width: 100%; }

.owl-nav.disabled,
.slider-dots.disabled {
  display: none; }

.owl-nav .owl-prev,
.owl-nav .owl-next,
.slide-btn.prev,
.slide-btn.next,
.slider-dot {
  cursor: pointer;
  cursor: hand;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.slider.owl-loaded,
.carousel.owl-loaded {
  display: block; }

.slider.owl-loading,
.carousel.owl-loading {
  opacity: 0;
  display: block; }

.slider.owl-hidden {
  opacity: 0; }

.slider.owl-refresh .owl-item {
  visibility: hidden; }

.slider.owl-drag .owl-item {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.slider.owl-grab {
  cursor: move;
  cursor: grab; }

.slider.owl-rtl {
  direction: rtl; }

.slider.owl-rtl .owl-item {
  float: right; }

/* No Js */
.no-js .slider {
  display: block; }

/* Owl Carousel - Animate Plugin */
.slider .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both; }

.slider .owl-animated-in {
  z-index: 0; }

.slider .owl-animated-out {
  z-index: 1; }

.slider .fadeOut {
  animation-name: fadeOut; }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/* Owl Carousel - Auto Height Plugin */
.owl-height {
  transition: height 500ms ease-in-out; }

/* Owl Carousel - Lazy Load Plugin */
.slider .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity 400ms ease; }

.slider .owl-item img.owl-lazy {
  transform-style: preserve-3d; }

/* Owl Carousel - Video Plugin */
.slider .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.slider .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  backface-visibility: hidden;
  transition: transform 100ms ease; }

.slider .owl-video-play-icon:hover {
  -ms-transform: scale(1.3, 1.3);
  transform: scale(1.3, 1.3); }

.slider .owl-video-playing .owl-video-tn,
.slider .owl-video-playing .owl-video-play-icon {
  display: none; }

.slider .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease; }

.slider .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }

.owl-nav {
  position: absolute;
  left: 50%;
  z-index: 10;
  width: 100%;
  margin: 0 auto;
  display: block;
  transform: translate(-50%, 0); }

.owl-nav,
.slider-nav {
  position: absolute;
  bottom: 30px;
  right: 45px;
  z-index: 5;
  height: 50px;
  width: 100px;
  margin-top: -25px;
  display: inline-block;
  /*transform: translate(-50%,-50%);*/ }

.slider-wrapper:hover .slider-nav {
  opacity: 1; }

#main .section-heroslider a.caption-wrapper p,
#main .section-heroslider a.caption-wrapper h2,
#main .section-heroslider a.caption-wrapper h3 {
  margin-bottom: 10px; }

#main .section-heroslider a.caption-wrapper p,
#main .section-heroslider a.caption-wrapper h2,
#main .section-heroslider a.caption-wrapper h3 {
  margin-bottom: 10px; }

@media only screen and (max-width: 1280px) {
  .section-carousel .slide-btn.next {
    top: -15px;
    right: -25px; }
  .section-carousel .slide-btn.prev {
    top: -15px;
    left: -25px; } }

@media only screen and (max-width: 1023px) {
  .owl-nav,
  .slider-nav {
    top: 28.125%;
    display: none; } }

@media only screen and (max-width: 64rem) {
  .carousel .owl-item .slide {
    padding: 0 5px; } }

@media only screen and (max-width: 767px) {
  .carousel .owl-item .slide {
    padding: 0; }
  .slider-nav {
    display: none; } }

/*.carousel-wrapper { 
  padding-top: 40px;
  padding-bottom: 40px; }*/
.carousel .slider-nav {
  position: absolute;
  top: auto;
  right: auto;
  bottom: 50%;
  left: 50%;
  z-index: 2;
  float: left;
  width: 100%;
  height: 0;
  display: block;
  transform: translateX(-50%); }

#main .carousel .slide-btn.next,
#main .carousel .slide-btn.prev {
  position: absolute;
  bottom: auto;
  top: 50%;
  float: left;
  margin: 0;
  display: block;
  background-color: var(--color-one);
  transform: translateY(-50%);
  overflow: hidden;
  opacity: 1; }

#main .carousel .slide-btn.prev span:before,
#main .carousel .slide-btn.next span:before {
  color: #fff;
  font-size: 40px;
  text-shadow: none;
  opacity: 1; }

#main .carousel .slide-btn.prev {
  left: -60px;
  right: auto; }

#main .carousel .slide-btn.next {
  right: -60px;
  left: auto; }

#main .carousel .slide-btn.disabled {
  display: none; }

@media only screen and (max-width: 1024px) {
  .carousel .slider-nav {
    bottom: -55px;
    width: auto;
    display: inline-block; }
  #main .carousel .slide-btn.prev,
  #main .carousel .slide-btn.next {
    position: relative;
    right: auto;
    left: auto;
    margin: 0 10px; } }

/*========= COLOR/LAYOUT-THEME =========*/
.kin-lyt .cat-title {
  color: var(--color-two); }

.kin-lyt #mainnav .nav-btn-list *,
.kin-lyt #mainnav .drpdwn-tab .nav-btn p::after,
.kin-lyt #mainnav .subnav-btn p::after,
.kin-lyt #mainnav .nav-btn::after,
.kin-lyt #mainnav .subnav-btn::after,
.kin-lyt #main-container .scroll-btn::before,
.kin-lyt #main-container .scroll-btn::after {
  color: var(--color-two-dark); }

.kin-lyt .tab-button::before,
.kin-lyt .tab-button::after,
.kin-lyt .tab-button:hover::before,
.kin-lyt .tab-button:hover::after {
  background-image: none;
  background-color: var(--color-two-dark); }

.kin-lyt #mainnav .page-info .abstract {
  color: var(--grey); }

.kin-lyt #mainnav .page-info .button * {
  color: var(--white); }

#main .section-heroslider,
#main .slide a.caption-wrapper:before,
#main .slide.img.cpt-std .wrapper-s::before {
  background-image: linear-gradient(to right, rgba(var(--color-one-rgb), 0.92) 25%, rgba(var(--color-two-rgb), 0.85) 70%); }

.partner-overview .teaserlist .teaser-item.no-img {
  background-image: linear-gradient(to right, rgba(var(--color-two-rgb), 0.92) 0%, rgba(var(--color-two-light-rgb), 0.85) 50%); }

.erw-lyt .button:after,
.erw .button:after {
  background-image: linear-gradient(to right, rgba(var(--color-one-rgb), 1), rgba(var(--color-one-light-rgb), 1) 70%); }

.kin-lyt .button:after,
.kin .button:after {
  background-image: linear-gradient(to right, rgba(var(--color-two-rgb), 1), rgba(var(--color-two-light-rgb), 1) 70%); }

.kin-lyt .bg-green .button:after,
.kin-lyt .bg-blue .button:after,
.kin .bg-green .button:after,
.kin .bg-blue .button:after {
  background: var(--white) !important; }

.kin-lyt .button *,
.kin .button * {
  color: var(--white); }

.bg-green .button *,
.kin-lyt .bg-blue .button *,
.kin-lyt .bg-green .button * {
  color: var(--color-two) !important; }

.erw-lyt .pagination,
.erw .pagination {
  background-color: var(--color-one);
  background-image: linear-gradient(to right, rgba(var(--color-one-light-rgb), 1), rgba(var(--color-one-rgb), 1) 50%, rgba(var(--color-one-light-rgb), 1)); }

.kin-lyt .pagination,
.kin .pagination {
  background-color: var(--color-two);
  background-image: linear-gradient(to right, rgba(var(--color-two-light-rgb), 1), rgba(var(--color-two-rgb), 1) 50%, rgba(var(--color-two-light-rgb), 1)); }

.erw-lyt .section-heroslider,
.erw-lyt .slide.img.cpt-std .wrapper-s:before {
  background-image: linear-gradient(to right, rgba(var(--color-one-rgb), 0.92) 25%, rgba(var(--color-one-light-rgb), 0.92) 70%); }

.kin-lyt .section-heroslider,
.kin-lyt .slide.img.cpt-std .wrapper-s:before {
  background-image: linear-gradient(to right, rgba(var(--color-two-rgb), 0.92) 25%, rgba(var(--color-two-light-rgb), 0.92) 70%); }

@media only screen and (max-width: 960px) {
  .erw-lyt .pagination,
  .erw .pagination {
    background-image: linear-gradient(to right, rgba(var(--color-one-rgb), 1) 25%, rgba(var(--color-one-light-rgb), 1)); }
  .kin-lyt .pagination,
  .kin .pagination {
    background-image: linear-gradient(to right, rgba(var(--color-two-rgb), 1) 25%, rgba(var(--color-two-light-rgb), 1)); } }

/*========= TIME, AUTHOR =========*/
p.author-title {
  font-family: var(--font-bold);
  font-size: calc(14 * var(--rem-per-pixels));
  line-height: calc(22 * var(--em-per-pixels));
  color: var(--color-one); }

time,
span.author {
  position: relative;
  margin-right: 20px;
  display: inline-block; }

/*========= HINT-WIN =========*/
.hint-win {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 500;
  width: 100%;
  padding: 20px 0 0 0;
  display: block;
  border-top: 1px solid var(--lightgrey);
  background-color: var(--white);
  background-color: rgba(var(--white-rgb), 0.92);
  box-shadow: rgba(var(--black-rgb), 0.1) 3px 15px 43px; }

.hint-win .main-wrapper {
  max-width: var(--max-width-m);
  display: block;
  padding: 10px 20px;
  margin: 0 auto; }

.cc-cat-list,
.cc-cat {
  float: left;
  width: 100%;
  margin: 0;
  display: block; }

.cc-cat .title {
  padding: 15px 0 0 0; }

.hint-win .InputfieldHeader {
  margin-bottom: 5px; }

.hint-win .hint,
.hint-win button {
  float: none;
  display: inline-block; }

.hint-win .hint,
.hint-win .hint p {
  width: 100%;
  display: block; }

.hint-win .title p,
.hint-win .hint *,
.hint-win .InputfieldHeader * {
  margin-bottom: 0; }

.hint-win .title p,
.hint-win .InputfieldHeader * {
  margin-bottom: 0;
  font-family: var(--font-regular);
  color: var(--color-txt); }

.hint-win .title p {
  color: var(--color-one); }

.hint-win .InputfieldHeader * {
  font-size: calc(20 * var(--rem-per-pixels)); }

.hint-win .button-wrapper {
  float: left;
  position: relative;
  top: auto;
  right: auto;
  width: auto;
  height: auto;
  padding: 0;
  margin-bottom: 20px;
  display: block; }

.hint-win button {
  float: left;
  position: relative;
  top: auto;
  left: auto;
  margin: 20px 15px 0 0;
  display: block; }

.hint-win button:last-child {
  margin-right: 0; }

.hint-win button span {
  display: inline-block;
  white-space: nowrap; }

.hint-win .InputfieldContent * {
  margin-bottom: 0;
  font-family: var(--font-running-text);
  color: var(--color-txt); }

.hint-win .pw-no-select {
  float: left;
  width: 100%;
  margin-top: 0;
  padding-left: 30px;
  font-family: var(--font-bold);
  /*color: var(--color-one);*/ }

#cookie-settings-wrapper {
  width: 100%;
  height: 0;
  display: block;
  overflow: hidden; }

#cookie-settings-content {
  padding-bottom: 20px; }

input[readonly="readonly"] {
  pointer-events: none; }

input:read-only {
  pointer-events: none; }

input:-moz-read-only {
  pointer-events: none; }

@media only screen and (max-width: 1280px) {
  /*.hint-win .main-wrapper { padding: 20px 2.5%; }

	.hint-win .button-wrapper {
		position: static;
		width: 100%; height: auto;
		padding: 15px 0 0 0; }

	.hint-win button {
		position: relative;
		top: auto; left: auto;
	    display: inline-block;
	    transform: translate(0,0); }

	.hint-win .hint { padding-right: 0; }*/ }

/*========== OPSEO SEAL ==========*/
.opseo-seal {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 10;
  width: 10%;
  min-width: 60px;
  max-width: 120px;
  height: auto;
  background-color: rgba(var(--white-rgb), 0.89);
  transform: translateY(-50%);
  border: none;
  border-radius: var(--border-radius-std) 0 0 var(--border-radius-std);
  overflow: hidden;
  text-decoration: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important; }

.opseo-seal figure {
  width: 100%;
  padding-bottom: 125%;
  background: var(--lightgrey) url("../img/200622-sidebar-icon.png") no-repeat center;
  background-size: contain;
  display: block; }

@media only screen and (max-width: 640px) {
  .opseo-seal {
    top: 0;
    border-radius: 0 0 0 var(--border-radius-std);
    transform: none; } }

/*========== COLOR SETTINGS ==========*/
body *,
body *::before,
body *::after {
  color: var(--color-txt);
  border-color: var(--color-txt); }

* .w-txt *,
* .w-txt *::before,
* .w-txt *::after {
  --color-txt: var(--white);
  --color-txt-rgb: var(--white-rgb); }

* .blue-txt *,
* .blue-txt *::before,
* .blue-txt *::after {
  --color-txt: var(--blue);
  --color-txt-rgb: var(--blue-rgb); }

* .clr-one-txt *,
* .clr-one-txt *::before,
* .clr-one-txt *::after {
  --color-txt: var(--color-one);
  --color-txt-rgb: var(--color-one-rgb); }

* .green-txt *,
* .green-txt *::before,
* .green-txt *::after {
  --color-txt: var(--green);
  --color-txt-rgb: var(--green-rgb); }

* .clr-two-txt *,
* .clr-two-txt *::before,
* .clr-two-txt *::after {
  --color-txt: var(--color-two);
  --color-txt-rgb: var(--color-two-rgb); }

* .g-txt *,
* .g-txt *::before,
* .g-txt *::after {
  --color-txt: var(--grey);
  --color-txt-rgb: var(--grey-rgb); }

* .lg-txt *,
* .lg-txt *::before,
* .lg-txt *::after {
  --color-txt: var(--lightgrey);
  --color-txt-rgb: var(--lightgrey-rgb); }

* .w-txt *,
* .w-txt *::before,
* .w-txt *::after {
  --color-txt: var(--white);
  --color-txt-rgb: var(--white-rgb); }

* .bg-blue {
  --color-bg: var(--blue); }

* .bg-green {
  --color-bg: var(--green); }

* .bg-black {
  --color-bg: var(--black); }

* .bg-grey {
  --color-bg: var(--color-txt); }

* .bg-color-one {
  --color-bg: var(--color-one); }

* .bg-color-two {
  --color-bg: var(--color-two); }

* .bg-grey {
  --color-bg: var(--color-txt);
  --color-bg-rgb: rgba(var(--grey-rgb), 0.92); }

* .bg-white {
  --color-bg: var(--white);
  --color-bg-rgb: rgba(var(--white-rgb), 0.92); }

* .bgc {
  background-color: var(--color-bg); }

* .bgc .button:hover * {
  color: var(--color-bg); }

* .bg-clear {
  background-color: transparent; }

* .bgc .button *,
* .bgc .button *::before,
* .bgc .button *::after {
  color: var(--color-bg);
  border-color: var(--color-bg) !important; }

/*========= FRONT-EDITING =========*/
.pw-edit,
.pw-edit-modal {
  width: 100%;
  display: block; }

.pw-edit-buttons {
  z-index: 1; }

.pw-AdminThemeUikit .ui-button {
  --color-txt: var(--white);
  background: var(--color-one) !important;
  border: 1px solid var(--color-one) !important; }

.pw-AdminThemeUikit button.ui-button.ui-priority-secondary,
.pw-AdminThemeUikit .ui-button.ui-priority-secondary {
  background: var(--grey) !important;
  border: 1px solid var(--grey) !important; }

.pw-AdminThemeUikit .ui-button:hover,
.pw-AdminThemeUikit button.ui-button.ui-priority-secondary:hover,
.pw-AdminThemeUikit .ui-button.ui-priority-secondary:hover {
  background: var(--color-two) !important;
  border: 1px solid var(--color-two) !important; }

.pw-edit,
.pw-edit-orig,
.pw-edit-copy {
  float: left;
  width: 100%;
  clear: both;
  display: block; }
