/* Resources/Public/Css/base/00-file-header-and-root.css */
:root {
  --tero-red: var(--tero-ci-red);
  --tero-red-dark: var(--tero-ci-red);
  --tero-grey: #f1f2f4;
  --tero-grey-border: #e0e0e0;
  --tero-text: #5c5c5c;
  --tero-heading: #3e3e3e;
  --tero-white: #fff;
  --tero-shadow: 5px 5px 20px rgba(0, 0, 0, .1);
  --tero-content: 1160px;
  --tero-wide: 1635px;
  --tero-side: 92%;
  --font-body:
    "Lato",
    Verdana,
    Arial,
    sans-serif;
  --font-head:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif;
  --font-hand:
    "Segoe Print",
    "Comic Sans MS",
    cursive;
}
@font-face {
  font-family: "TERO Avant Garde Demi";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("./assets/tero-avant-garde-gothic-demi-Q4TR3KAW.woff2") format("woff2");
}
@font-face {
  font-family: "TERO Avant Garde Demi";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("./assets/tero-avant-garde-gothic-demi-Q4TR3KAW.woff2") format("woff2");
}
@font-face {
  font-family: "TERO Avant Garde Demi";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("./assets/tero-avant-garde-gothic-demi-Q4TR3KAW.woff2") format("woff2");
}
@font-face {
  font-family: "TERO Avant Garde Demi";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("./assets/tero-avant-garde-gothic-demi-Q4TR3KAW.woff2") format("woff2");
}
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 400;
  src: url("./assets/lato-v17-latin-regular-ZQWDWSTR.woff2") format("woff2");
}
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  src: url("./assets/lato-v17-latin-700-CATYXG2N.woff2") format("woff2");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 400;
  src: url("./assets/roboto-condensed-v19-latin-regular-O4ZR735O.woff2") format("woff2");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 700;
  src: url("./assets/roboto-condensed-v19-latin-700-5QDSGRSG.woff2") format("woff2");
}
* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
address,
cite,
code,
del,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strong,
sub,
sup,
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,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
section {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  vertical-align: baseline;
}
article,
aside,
figcaption,
figure,
footer,
header,
main,
nav,
section {
  display: block;
}
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}
body {
  font: 400 18px/156% var(--font-body);
  color: var(--tero-text);
  background: #fff;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
}
ol,
ul {
  list-style: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
img,
video {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}
button,
input,
select,
textarea {
  font: inherit;
}
button {
  all: unset;
  cursor: pointer;
}
a {
  color: var(--tero-ci-red);
  text-decoration: none;
  transition: .3s ease;
}
a:hover,
a:focus-visible {
  color: var(--tero-ci-red);
}
:focus {
  outline: none;
}
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid var(--tero-ci-red);
  outline-offset: 2px;
}
::selection {
  background: var(--tero-ci-red);
  color: #fff;
}

/* Resources/Public/Css/base/01-typo3-ce-basics.css */
.ce-align-left {
  text-align: left;
}
.ce-align-center {
  text-align: center;
}
.ce-align-right {
  text-align: right;
}
.ce-headline-left {
  text-align: left;
}
.ce-headline-center {
  text-align: center;
}
.ce-headline-right {
  text-align: right;
}
.ce-gallery figure {
  display: table;
  margin: 0;
}
.ce-gallery figcaption {
  display: table-caption;
  caption-side: bottom;
}
.ce-gallery img {
  display: block;
}
.ce-column {
  float: left;
  margin-right: 10px;
}
.ce-column:last-child {
  margin-right: 0;
}
.ce-left .ce-gallery {
  float: left;
}
.ce-right .ce-gallery {
  float: right;
}
.ce-center .ce-outer {
  position: relative;
  float: right;
  right: 50%;
}
.ce-center .ce-inner {
  position: relative;
  float: right;
  right: -50%;
}
.ce-table {
  width: 100%;
  max-width: 100%;
}
.ce-table th,
.ce-table td {
  padding: .5em .75em;
  vertical-align: top;
  border-top: 1px solid #dadada;
}
.ce-table thead th {
  border-bottom: 2px solid #dadada;
}
.ce-uploads {
  margin: 0;
  padding: 0;
}
.ce-uploads li {
  list-style: none;
  margin: 1em 0;
  overflow: hidden;
}
.ce-uploads img {
  float: left;
  padding-right: 1em;
}

/* Resources/Public/Css/base/02-global-layout.css */
.site {
  position: relative;
  display: flex;
  min-height: 100vh;
  flex-direction: column;
  margin: 0 auto;
  box-shadow: 0 0 10px rgba(0, 0, 0, .2);
}
.site .main {
  flex: 1 0 auto;
  overflow: hidden;
}
.head > .inner,
.foot > * > .inner {
  width: var(--tero-side);
  max-width: var(--tero-wide);
  margin-inline: auto;
}
.cont > .frame {
  width: var(--tero-side);
  max-width: var(--tero-content);
  margin-inline: auto;
}
.cont > .frame.frame-layout-10,
.cont > .frame.frame-layout-20 {
  max-width: none;
  width: 100%;
}
.cont > .frame.frame-layout-20 > .inner {
  width: var(--tero-side);
  max-width: var(--tero-content);
  margin-inline: auto;
}
.site .allcont .cont > div:first-child {
  margin-top: 100px;
}
.site .allcont .cont > div:last-child {
  margin-bottom: 120px;
}
.site .allcont .cont > div:first-child.frame-greybox,
.site .allcont .cont > div:first-child.frame-ci_bg {
  margin-top: 0;
}
.site .allcont .cont > div:last-child.frame-greybox,
.site .allcont .cont > div:last-child.frame-ci_bg {
  margin-bottom: 0;
}
.frame-space-before-extra-small {
  margin-top: 30px;
}
.frame-space-before-small {
  margin-top: 45px;
}
.frame-space-before-medium {
  margin-top: 60px;
}
.frame-space-before-large {
  margin-top: 100px;
}
.frame-space-before-extra-large {
  margin-top: 180px;
}
.frame-space-after-extra-small {
  margin-bottom: 30px;
}
.frame-space-after-small {
  margin-bottom: 45px;
}
.frame-space-after-medium {
  margin-bottom: 60px;
}
.frame-space-after-large {
  margin-bottom: 100px;
}
.frame-space-after-extra-large {
  margin-bottom: 180px;
}
.frame-greybox {
  background: var(--tero-grey);
  padding: 50px;
}
.frame-ci_bg {
  background: var(--tero-ci-red);
  padding: 50px;
  color: #fff;
}
.frame-ci_bg h1,
.frame-ci_bg h2,
.frame-ci_bg h3,
.frame-ci_bg h4,
.frame-ci_bg h5,
.frame-ci_bg a {
  color: #fff;
}
.tero-ce.tero-space-before-none {
  margin-top: 0 !important;
}
.tero-ce.tero-space-before-extra-small {
  margin-top: 3rem !important;
}
.tero-ce.tero-space-before-small {
  margin-top: 6rem !important;
}
.tero-ce.tero-space-before-medium {
  margin-top: 12rem !important;
}
.tero-ce.tero-space-before-large {
  margin-top: 18rem !important;
}
.tero-ce.tero-space-before-extra-large {
  margin-top: 24rem !important;
}
.tero-ce.tero-space-after-none {
  margin-bottom: 0 !important;
}
.tero-ce.tero-space-after-extra-small {
  margin-bottom: 3rem !important;
}
.tero-ce.tero-space-after-small {
  margin-bottom: 6rem !important;
}
.tero-ce.tero-space-after-medium {
  margin-bottom: 12rem !important;
}
.tero-ce.tero-space-after-large {
  margin-bottom: 18rem !important;
}
.tero-ce.tero-space-after-extra-large {
  margin-bottom: 24rem !important;
}
.tero-ce.tero-bg-white,
.tero-ce.tero-bg-light,
.tero-ce.tero-bg-red,
.tero-ce.tero-bg-dark {
  --tero-ce-bg: transparent;
  --tero-ce-fg: inherit;
  padding: 3.125rem;
}
.tero-ce.tero-bg-white {
  --tero-ce-bg: var(--tero-white);
  background: var(--tero-white);
}
.tero-ce.tero-bg-light {
  --tero-ce-bg: var(--tero-grey);
  background: var(--tero-grey);
}
.tero-ce.tero-bg-red {
  --tero-ce-bg: var(--tero-ci-red);
  --tero-ce-fg: #fff;
  background: var(--tero-ci-red);
  color: #fff;
}
.tero-ce.tero-bg-dark {
  --tero-ce-bg: #303236;
  --tero-ce-fg: #fff;
  background: #303236;
  color: #fff;
}
.tero-ce.tero-bg-red h1,
.tero-ce.tero-bg-red h2,
.tero-ce.tero-bg-red h3,
.tero-ce.tero-bg-red h4,
.tero-ce.tero-bg-red h5,
.tero-ce.tero-bg-red h6,
.tero-ce.tero-bg-red a,
.tero-ce.tero-bg-dark h1,
.tero-ce.tero-bg-dark h2,
.tero-ce.tero-bg-dark h3,
.tero-ce.tero-bg-dark h4,
.tero-ce.tero-bg-dark h5,
.tero-ce.tero-bg-dark h6,
.tero-ce.tero-bg-dark a {
  color: #fff;
}
.tero-ce.tero-bg-area-section-full {
  box-shadow: 0 0 0 100vmax var(--tero-ce-bg);
  clip-path: inset(0 -100vmax);
}
.tero-ce.tero-bg-area-section-box {
  background-clip: border-box;
}
.tero-ce.tero-bg-area-header-full,
.tero-ce.tero-bg-area-header-box {
  background: transparent;
  color: inherit;
  padding: 0;
}
.tero-ce.tero-bg-area-header-full > .inner > :is(h1, h2, h3, h4, h5, h6, .ce-headline-left, .ce-headline-center, .ce-headline-right),
.tero-ce.tero-bg-area-header-full > .inner > :is(.tiles-top, .timeline-top, .accordion_wrap),
.tero-ce.tero-bg-area-header-full > .inner > .faq > :is(.faq_roofline, .faq_headline),
.tero-ce.tero-bg-area-header-full > .inner > .textpicture > .textpicture_wrap :is(.textpicture_roofline, .textpicture_headline),
.tero-ce.tero-bg-area-header-box > .inner > :is(h1, h2, h3, h4, h5, h6, .ce-headline-left, .ce-headline-center, .ce-headline-right),
.tero-ce.tero-bg-area-header-box > .inner > :is(.tiles-top, .timeline-top, .accordion_wrap),
.tero-ce.tero-bg-area-header-box > .inner > .faq > :is(.faq_roofline, .faq_headline),
.tero-ce.tero-bg-area-header-box > .inner > .textpicture > .textpicture_wrap :is(.textpicture_roofline, .textpicture_headline) {
  background: var(--tero-ce-bg);
  color: var(--tero-ce-fg);
  padding: 2rem 3.125rem;
}
.tero-ce.tero-bg-area-header-full > .inner > :is(h1, h2, h3, h4, h5, h6, .ce-headline-left, .ce-headline-center, .ce-headline-right),
.tero-ce.tero-bg-area-header-full > .inner > :is(.tiles-top, .timeline-top, .accordion_wrap),
.tero-ce.tero-bg-area-header-full > .inner > .faq > :is(.faq_roofline, .faq_headline),
.tero-ce.tero-bg-area-header-full > .inner > .textpicture > .textpicture_wrap :is(.textpicture_roofline, .textpicture_headline) {
  box-shadow: 0 0 0 100vmax var(--tero-ce-bg);
  clip-path: inset(0 -100vmax);
}
.tero-ce.tero-bg-area-header-full > .inner > :is(h1, h2, h3, h4, h5, h6, .ce-headline-left, .ce-headline-center, .ce-headline-right) :is(a, span, strong),
.tero-ce.tero-bg-area-header-full > .inner > :is(.tiles-top, .timeline-top, .accordion_wrap) :is(a, span, strong),
.tero-ce.tero-bg-area-header-full > .inner > .faq > :is(.faq_roofline, .faq_headline) :is(a, span, strong),
.tero-ce.tero-bg-area-header-full > .inner > .textpicture > .textpicture_wrap :is(.textpicture_roofline, .textpicture_headline) :is(a, span, strong),
.tero-ce.tero-bg-area-header-box > .inner > :is(h1, h2, h3, h4, h5, h6, .ce-headline-left, .ce-headline-center, .ce-headline-right) :is(a, span, strong),
.tero-ce.tero-bg-area-header-box > .inner > :is(.tiles-top, .timeline-top, .accordion_wrap) :is(a, span, strong),
.tero-ce.tero-bg-area-header-box > .inner > .faq > :is(.faq_roofline, .faq_headline) :is(a, span, strong),
.tero-ce.tero-bg-area-header-box > .inner > .textpicture > .textpicture_wrap :is(.textpicture_roofline, .textpicture_headline) :is(a, span, strong) {
  color: inherit;
}

/* Resources/Public/Css/base/03-typography.css */
h1,
h2,
h3,
h4,
h5,
h6,
.like-h1,
.like-h2,
.like-h3,
.like-h4,
.like-h5,
.like-h6 {
  font-family: var(--font-head);
  font-weight: 400;
  line-height: 120%;
  color: var(--tero-heading);
  margin: 0;
}
h1,
.like-h1 {
  font-size: 50px;
}
h2,
.like-h2 {
  font-size: 40px;
}
h3,
.like-h3 {
  font-size: 32px;
}
h4,
.like-h4 {
  font-size: 26px;
}
h5,
.like-h5 {
  font-size: 22px;
}
h6,
.like-h6 {
  font-size: 18px;
}
h1 + p,
h2 + p,
h3 + p,
h4 + p,
h5 + p,
h6 + p {
  padding-top: .5em;
}
p + p,
p + ul,
p + ol,
ul + p,
ol + p,
ul + h2,
ol + h2,
p + h2,
p + h3 {
  margin-top: 1em;
}
strong,
b {
  font-weight: 700;
}
em,
i {
  font-style: italic;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.redtext {
  color: var(--tero-ci-red);
}
.largetext {
  font-size: 1.5em;
}
.uppercase {
  text-transform: uppercase;
}
.handwritten {
  font-family: var(--font-hand);
  color: var(--tero-ci-red);
  font-size: 40px;
}
.shadowbox,
.tile {
  display: block;
  background: #fff;
  box-shadow: var(--tero-shadow);
  text-decoration: none;
}
.shadowbox {
  padding: 30px;
}
.shadowbox:hover,
.shadowbox:focus-visible {
  transform: translateY(-5px);
}
.tile {
  position: relative;
  padding: 30px;
  overflow: hidden;
}
.roofline,
p[class*=roofline] {
  display: inline-block;
  position: relative;
  color: var(--tero-ci-red);
  text-transform: uppercase;
  font: 700 20px/1.25 var(--font-head);
  letter-spacing: .2em;
  padding-bottom: 10px;
}
.roofline:before,
.roofline:after,
p[class*=roofline]:before,
p[class*=roofline]:after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  background: var(--tero-grey);
  width: 70px;
  height: 70px;
  transform: translate(-100px, -85px);
}
.roofline:after,
p[class*=roofline]:after {
  width: 40px;
  height: 40px;
  transform: translate(-30px, -10px);
}
.allcont ul li {
  position: relative;
  padding: 5px 10px 5px 25px;
}
.allcont ul li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 15px;
  width: 6px;
  height: 6px;
  background: var(--tero-ci-red);
  border-radius: 50%;
}
.allcont ol {
  margin: 10px 0;
  counter-reset: item;
}
.allcont ol li {
  position: relative;
  padding: 5px 0 5px 1.7em;
  counter-increment: item;
}
.allcont ol li:before {
  content: counter(item) ".";
  position: absolute;
  top: 5px;
  left: 0;
  font-weight: 700;
}

/* Resources/Public/Css/base/04-buttons.css */
.button,
input[type=submit],
.tero-form-embed-form [data-tero-controlled-submit=true],
.tabtocontent {
  display: inline-block;
  position: relative;
  color: #fff;
  background: var(--tero-button-color-start);
  padding: 12px 55px 12px 30px;
  border: 0;
  font-family: var(--font-head);
  line-height: 120%;
  cursor: pointer;
  text-decoration: none;
  transition: .3s ease;
}
.button:after,
input[type=submit]:after,
.tero-form-embed-form [data-tero-controlled-submit=true]:after,
.tabtocontent:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 30px;
  width: 16px;
  height: 10px;
  transform: translateY(-50%);
  background: url("./assets/arrow-right-white-NYTRSB3R.svg") no-repeat center/contain;
  transition: .3s ease;
}
.button:hover,
.button:focus-visible,
input[type=submit]:hover,
input[type=submit]:focus-visible,
.tero-form-embed-form [data-tero-controlled-submit=true]:hover,
.tero-form-embed-form [data-tero-controlled-submit=true]:focus-visible {
  background: var(--tero-button-color-end);
  color: #fff;
}
.button:hover:after,
.button:focus-visible:after,
input[type=submit]:hover:after,
input[type=submit]:focus-visible:after,
.tero-form-embed-form [data-tero-controlled-submit=true]:hover:after,
.tero-form-embed-form [data-tero-controlled-submit=true]:focus-visible:after {
  transform: translate(10px, -50%);
}
.button.outline {
  background: transparent;
  border: 1px solid var(--tero-button-color-start);
  color: var(--tero-button-color-start);
}
.button.outline:after {
  background-image: url("./assets/arrow-right-red-DK46E5ZG.svg");
}
.button.outline:hover,
.button.outline:focus-visible {
  background: var(--tero-button-color-end);
  border-color: var(--tero-button-color-end);
  color: #fff;
}
.button.outline:hover:after,
.button.outline:focus-visible:after {
  background-image: url("./assets/arrow-right-white-NYTRSB3R.svg");
}
.arrowlink {
  position: relative;
  display: inline-block;
  padding-right: 40px;
  color: var(--tero-heading);
}
.arrowlink:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 20px;
  height: 13px;
  transform: translateY(-50%);
  background: url("./assets/arrow-right-grey-TSBVL6MD.svg") no-repeat center/100% auto;
  transition: .3s ease;
}
.arrowlink:hover:after,
.arrowlink:focus-visible:after {
  transform: translate(5px, -50%);
}

/* Resources/Public/Css/layout/00-header-nav.css */
.head {
  position: sticky;
  top: 0;
  background: var(--tero-grey);
  z-index: 99;
  transition: .3s ease;
}
.head > .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 40px 0;
  transition: .3s ease;
}
.head > .inner .logo {
  width: 150px;
  height: 79px;
  background: url("./assets/logo-4IJWQC4F.png") no-repeat center/100% auto;
  transition: .3s ease;
}
.head > .inner .logo a {
  display: block;
  width: 100%;
  height: 100%;
}
.head > .inner .logo a span {
  display: none;
}
.head.stickyhead {
  background: #fff;
  z-index: 999;
  box-shadow: var(--tero-shadow);
}
.head.stickyhead > .inner {
  padding: 10px 0;
}
.head.stickyhead > .inner .logo {
  width: 120px;
  height: 64px;
}
.head .nav {
  display: flex;
}
.head .nav > li {
  position: relative;
}
.head .nav > li + li {
  margin-left: 80px;
}
.head .nav a {
  display: block;
  position: relative;
  color: var(--tero-heading);
  font-family: var(--font-head);
  font-size: 22px;
  text-decoration: none;
}
.head .nav > li > a > span {
  display: inline-block;
  position: relative;
}
.head .nav > li > a > span::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -7px;
  height: 6px;
  border-radius: 999px;
  background: var(--tero-ci-red);
  box-shadow: 2px 2px 5px rgba(120, 0, 20, .16);
  opacity: 0;
  transform: scaleX(.55);
  transform-origin: center;
  transition: opacity .2s ease, transform .22s ease;
  pointer-events: none;
}
.head .nav > li.active > a > span::after,
.head .nav > li.act > a > span::after {
  opacity: 1;
  transform: scaleX(1);
}
.head .nav:hover > li.active:not(:hover):not(:focus-within) > a > span::after,
.head .nav:hover > li.act:not(:hover):not(:focus-within) > a > span::after,
.head .nav:focus-within > li.active:not(:hover):not(:focus-within) > a > span::after,
.head .nav:focus-within > li.act:not(:hover):not(:focus-within) > a > span::after {
  opacity: 0;
  transform: scaleX(.55);
}
.head .nav > li:hover > a > span::after,
.head .nav > li:focus-within > a > span::after {
  opacity: 1;
  transform: scaleX(1);
}
@media (prefers-reduced-motion: reduce) {
  .head .nav > li > a > span::after {
    animation: none;
    transition: none;
  }
}
.head .nav li:hover > a,
.head .nav li:focus-within > a {
  color: var(--tero-ci-red);
}
.head .subnav {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 100;
  flex-direction: column;
  box-shadow: var(--tero-shadow);
}
.head li:hover > .subnav,
.head li:focus-within > .subnav {
  display: flex;
}
.head .subnav a {
  white-space: nowrap;
  background: var(--tero-grey);
  color: var(--tero-text);
  padding: 10px 20px;
}
.head .subnav li + li {
  border-top: 1px solid #fff;
}
.open_nav,
.showSub {
  display: none;
}
.hamburger {
  padding: 15px;
  display: inline-block;
}
.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative;
}
.hamburger-inner,
.hamburger-inner:before,
.hamburger-inner:after {
  position: absolute;
  width: 40px;
  height: 4px;
  background: var(--tero-ci-red);
  border-radius: 2px;
  transition: .2s ease;
}
.hamburger-inner {
  top: 50%;
  margin-top: -2px;
}
.hamburger-inner:before,
.hamburger-inner:after {
  content: "";
  display: block;
}
.hamburger-inner:before {
  top: -10px;
}
.hamburger-inner:after {
  bottom: -10px;
}
.hamburger.is-active .hamburger-inner {
  transform: rotate(225deg);
}
.hamburger.is-active .hamburger-inner:before {
  top: 0;
  opacity: 0;
}
.hamburger.is-active .hamburger-inner:after {
  bottom: 0;
  transform: rotate(-90deg);
}

/* Resources/Public/Css/content-elements/banner-hero.css */
.banner {
  position: relative;
}
.banner .image {
  position: relative;
  height: 100%;
}
.banner .image:after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .2);
}
.banner .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.banner .text {
  position: absolute;
  top: 50%;
  left: calc((100vw - 1160px)/2);
  transform: translateY(-50%);
  width: 92%;
  max-width: 680px;
  font: 400 26px/115% var(--font-head);
  color: var(--tero-heading);
}
.banner.isolated {
  width: 100%;
  height: 720px;
  background: var(--tero-grey);
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
}
.banner.isolated .image {
  max-width: 50vw;
  height: auto;
}
.banner.isolated .image:after {
  content: none;
}
.banner.isolated .image img {
  width: auto;
  height: auto;
  object-fit: contain;
}
.banner.isolated .buttons {
  display: flex;
  flex-wrap: wrap;
  margin-top: 50px;
  font-size: 22px;
}
.banner.isolated .buttons .handwritten {
  display: block;
  font-size: 30px;
  padding-bottom: 5px;
}
.banner.isolated .buttons .shadowbox + .shadowbox {
  margin-left: 35px;
}
.tero-home-job-search {
  --home-search-red: var(--tero-ci-red);
  --home-search-dark: #3e3e3e;
  --home-search-border: #dedede;
  display: grid;
  grid-template-columns: minmax(200px, 1.1fr) minmax(170px, .9fr) 280px 140px;
  gap: 14px;
  align-items: end;
  box-sizing: border-box;
  width: min(960px, calc(100vw - 80px));
  margin-top: 28px;
  padding: 20px 22px;
  position: relative;
  isolation: isolate;
  overflow: visible;
  border: 0;
  border-radius: 8px;
  background: transparent;
  box-shadow: none;
}
.tero-home-job-search::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border: 1px solid rgba(38, 38, 38, .08);
  border-radius: 8px;
  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, .94) 0%,
      rgba(248, 248, 249, .98) 100%),
    radial-gradient(
      circle at 12% 0,
      color-mix(in srgb, var(--tero-ci-red) 12%, transparent),
      transparent 36%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .86),
    0 18px 34px rgba(0, 0, 0, .10),
    0 8px 22px color-mix(in srgb, var(--tero-ci-red) 8%, transparent);
  pointer-events: none;
}
.tero-home-job-search__field {
  min-width: 0;
}
.tero-home-job-search label {
  display: block;
  margin-bottom: 8px;
  color: var(--home-search-dark);
  font: 800 13px/1.2 var(--font-body);
}
.tero-home-job-search input:not([type=range]) {
  width: 100%;
  box-sizing: border-box;
  height: 50px;
  border: 1px solid var(--home-search-border);
  border-radius: 6px;
  background: #fff;
  padding: 11px 13px;
  color: var(--home-search-dark);
  font: 400 15px/1.25 var(--font-body);
  box-shadow: 0 1px 0 rgba(255, 255, 255, .9);
  transition: border-color .2s ease, box-shadow .2s ease;
}
.tero-home-job-search input:not([type=range])::placeholder {
  color: #777;
  font-size: 14px;
  opacity: 1;
}
.tero-home-job-search input:not([type=range]):focus {
  border-color: color-mix(in srgb, var(--tero-ci-red) 48%, transparent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--tero-ci-red) 12%, transparent);
  outline: 0;
}
.tero-home-job-search__radius-row {
  display: flex;
  align-items: center;
  gap: 12px;
  box-sizing: border-box;
  min-height: 52px;
  padding: 10px 12px;
  overflow: visible;
  border: 1px solid var(--home-search-border);
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 1px 0 rgba(255, 255, 255, .9);
}
.tero-home-job-search__radius-row input[type=range] {
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
  height: 24px;
  margin: 0;
  padding: 0;
  overflow: visible;
  appearance: none;
  -webkit-appearance: none;
  background:
    linear-gradient(
      90deg,
      var(--home-search-red) 0%,
      var(--home-search-red) 0%,
      color-mix(in srgb, var(--tero-ci-red-element-faded) 18%, white) 0%,
      color-mix(in srgb, var(--tero-ci-red-element-faded) 18%, white) 100%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: calc(100% - 20px) 8px;
  border: 0;
  border-radius: 999px;
  cursor: pointer;
  outline: 0;
  accent-color: var(--home-search-red);
}
.tero-home-job-search__radius-row input[type=range]::-webkit-slider-runnable-track {
  height: 8px;
  border: 0;
  border-radius: 999px;
  background: transparent;
}
.tero-home-job-search__radius-row input[type=range]::-webkit-slider-thumb {
  width: 20px;
  height: 20px;
  margin-top: -6px;
  border: 0;
  border-radius: 50%;
  background: var(--home-search-red);
  box-shadow: 0 1px 4px rgba(0, 0, 0, .20);
  -webkit-appearance: none;
  appearance: none;
}
.tero-home-job-search__radius-row input[type=range]::-moz-range-track {
  height: 8px;
  border: 0;
  border-radius: 999px;
  background: color-mix(in srgb, var(--tero-ci-red-element-faded) 18%, white);
}
.tero-home-job-search__radius-row input[type=range]::-moz-range-progress {
  height: 8px;
  border-radius: 999px;
  background: var(--home-search-red);
}
.tero-home-job-search__radius-row input[type=range]::-moz-range-thumb {
  width: 20px;
  height: 20px;
  border: 0;
  border-radius: 50%;
  background: var(--home-search-red);
  box-shadow: 0 1px 4px rgba(0, 0, 0, .20);
}
.tero-home-job-search__radius-row input[type=range]:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--tero-ci-red) 22%, transparent);
}
.tero-home-job-search__radius-row span {
  display: block;
  flex: 0 0 auto;
  min-width: 86px;
  width: auto;
  color: var(--home-search-dark);
  font: 800 13px/1.15 var(--font-body);
  text-align: left;
  white-space: nowrap;
}
.tero-home-job-search__submit {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  align-self: end;
  min-width: 140px;
  min-height: 50px;
  overflow: hidden;
  padding: 13px 20px;
  font-size: 14px;
  line-height: 1.2;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 1200px) {
  .tero-home-job-search::before {
    right: 0;
  }
}
@media (max-width: 1100px) {
  .tero-home-job-search {
    grid-template-columns: 1fr 1fr;
    width: 100%;
    padding: 22px;
  }
  .tero-home-job-search__field--radius {
    grid-column: 1 / -1;
  }
  .tero-home-job-search__submit {
    width: 100%;
  }
}
@media (max-width: 640px) {
  .tero-home-job-search {
    grid-template-columns: 1fr;
    gap: 14px;
    width: 100%;
    padding: 18px;
  }
  .tero-home-job-search__field--radius {
    grid-column: auto;
  }
  .tero-home-job-search__radius-row {
    gap: 10px;
  }
  .tero-home-job-search__submit {
    width: 100%;
  }
}
.tero-radius-control {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 86px;
  gap: 10px;
  align-items: center;
  box-sizing: border-box;
  min-height: 40px;
  background: #fff;
  border: 1px solid var(--tero-grey-border);
  padding: 8px 11px;
}
.tero-radius-control input[type=range] {
  width: 100%;
  min-width: 0;
  height: 18px;
  appearance: none;
  -webkit-appearance: none;
  background: transparent;
  accent-color: var(--tero-ci-red);
}
.tero-radius-control input[type=range]::-webkit-slider-runnable-track {
  height: 4px;
  border-radius: 999px;
  background: var(--tero-grey-border);
}
.tero-radius-control input[type=range]::-webkit-slider-thumb {
  width: 14px;
  height: 14px;
  margin-top: -5px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: var(--tero-ci-red);
  box-shadow: 0 0 0 1px var(--tero-ci-red);
}
.tero-radius-control input[type=range]::-moz-range-track {
  height: 4px;
  border-radius: 999px;
  background: var(--tero-grey-border);
}
.tero-radius-control input[type=range]::-moz-range-thumb {
  width: 12px;
  height: 12px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: var(--tero-ci-red);
  box-shadow: 0 0 0 1px var(--tero-ci-red);
}
.tero-radius-control output {
  width: 86px;
  color: var(--tero-heading);
  font: 700 13px/1.2 var(--font-body);
  text-align: right;
  white-space: nowrap;
}
#c109.frame-type-pxtero_bannerisolated h1,
#c109.frame-type-pxtero_bannerisolated h2,
#c109.frame-type-pxtero_bannerisolated h3,
#c109.frame-type-pxtero_bannerisolated .headline,
#c109.frame-type-pxtero_bannerisolated [class*=headline] {
  margin-top: 10px !important;
}

/* Resources/Public/Css/content-elements/text-picture-cta.css */
.textpicture_wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.textpicture_image,
.textpicture_text {
  width: calc(50% - 2%);
  position: relative;
}
.textpicture_image:before {
  content: "";
  position: absolute;
  right: -50px;
  bottom: -40px;
  width: 114px;
  height: 138px;
  background: url("./assets/diamonds-Q37Z2D56.svg") no-repeat center/contain;
  transform: rotate(180deg) scaleX(-1);
}
.textpicture_image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.textpicture.imageposition-right .textpicture_wrap {
  flex-direction: row-reverse;
}
.textpicture.imageposition-right .textpicture_image:before {
  right: auto;
  left: -70px;
}
.textpicture_text .roofline:before,
.textpicture_text .roofline:after,
.textpicture_text .textpicture_roofline:before,
.textpicture_text .textpicture_roofline:after {
  content: none;
}
.frame-type-pxtero_textpictureisolated {
  background: var(--tero-grey);
}
.textpicture.isolated .textpicture_image {
  margin-top: -70px;
}
.textpicture.isolated .textpicture_image:before {
  content: none;
}
.textpicture_textblock .button {
  margin-top: 20px;
}
.redboxcta {
  position: relative;
  background: var(--tero-ci-red);
  padding: 40px 70px;
  color: #fff;
}
.redboxcta h1,
.redboxcta h2,
.redboxcta h3,
.redboxcta h4,
.redboxcta h5,
.redboxcta h6,
.redboxcta a,
.redboxcta .handwritten {
  color: #fff;
}
.redboxcta.decor {
  margin-inline: 70px;
  padding-block: 70px;
}
.redboxcta.decor:before,
.redboxcta.decor:after {
  content: "";
  position: absolute;
  width: 114px;
  height: 138px;
  background: url("./assets/diamonds-Q37Z2D56.svg") no-repeat center/contain;
}
.redboxcta.decor:before {
  top: -35px;
  left: -80px;
}
.redboxcta.decor:after {
  right: -90px;
  bottom: 15px;
  z-index: -1;
  transform: rotate(180deg);
}
.redboxcta .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
.redboxcta .inner .text {
  font: 400 26px/1.4 var(--font-head);
}
.redboxcta .inner .graphic {
  position: absolute;
  right: 33%;
  bottom: -60px;
}
.redboxcta .arrowlink:after {
  background-image: url("./assets/arrow-right-white-NYTRSB3R.svg");
}

/* Resources/Public/Css/content-elements/tiles-accordions-legacy.css */
.gridrow {
  display: flex;
  flex-wrap: wrap;
}
.gridrow .col + .col {
  margin-left: 20px;
}
.grid2cols > .col {
  width: calc(50% - 10px);
}
.grid3cols > .col {
  width: calc(33.333% - 13.333px);
}
.tero-downloads__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.35rem;
}
.tero-downloads__item {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  background: var(--tero-white);
  border-radius: 16px;
  box-shadow: var(--tero-shadow);
  color: var(--tero-heading);
  overflow: hidden;
}
.tero-downloads__item:hover,
.tero-downloads__item:focus-visible {
  color: var(--tero-ci-red);
  transform: translateY(-2px);
}
.tero-downloads__preview {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 216px;
  min-height: 216px;
  padding: .65rem;
  background: var(--tero-white);
  overflow: hidden;
}
.tero-downloads__preview img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 174px;
  object-fit: contain;
}
.tero-downloads__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 174px;
  padding: .65rem;
  font: 500 14px/1.2 var(--font-head);
  color: var(--tero-ci-red);
  text-align: center;
}
.tero-downloads__title {
  display: block;
  flex: 1 1 auto;
  padding: .85rem;
  font: 500 18px/1.25 var(--font-head);
  text-align: center;
  overflow-wrap: anywhere;
}
.frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__content {
  display: flex;
  align-items: center;
  gap: 20px;
}
.frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__media {
  flex: 0 0 33.333%;
  max-width: 33.333%;
  min-width: 0;
}
.frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__body {
  flex: 1 1 0;
  min-width: 0;
}
.frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__media:only-child,
.frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__body:only-child {
  flex-basis: auto;
  max-width: none;
  width: 100%;
}
.frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__image,
.frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__image .ce-gallery,
.frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__image .ce-outer,
.frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__image .ce-inner,
.frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__image .ce-column {
  float: none;
  position: static;
  right: auto;
  left: auto;
  margin: 0;
}
.frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__image figure {
  margin-inline: auto;
}
.frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar--image-left .tero-flexible-hoverbar__image figure {
  margin-left: 0;
}
.frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar--image-right .tero-flexible-hoverbar__image figure {
  margin-right: 0;
}
.frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__image img {
  display: block;
  max-width: 100%;
  height: auto;
}
.tero-service-overview .gridrow.grid2cols {
  align-items: stretch;
}
.tero-service-overview .gridrow.grid2cols > .col {
  display: flex;
}
.tero-service-overview .gridrow.grid2cols > .col > .frame-greybox {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}
.tero-service-overview .gridrow.grid2cols > .col > .frame-greybox > .inner,
.tero-service-overview .gridrow.grid2cols > .col > .frame-greybox > .inner > .ce-textpic,
.tero-service-overview .gridrow.grid2cols > .col > .frame-greybox > .inner > .ce-textpic > .ce-bodytext {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
}
.grid4cols > .col {
  width: calc(25% - 15px);
}
.grid5cols > .col {
  width: calc(20% - 16px);
}
.tiles .tiles-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 60px;
}
.tiles .tiles-bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.tiles .tiles-bottom .tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.tiles .tiles-bottom .tile > .image {
  margin-bottom: 30px;
}
.tiles .tiles-bottom .tile > .headline {
  text-align: center;
}
.tiles .tiles-bottom .tile .hover {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  transform: translateX(-100%);
  transition: .3s ease;
  background: #fff;
  width: 100%;
  height: 100%;
  padding: 30px;
}
.tiles .tiles-bottom .tile.hover:hover .hover,
.tiles .tiles-bottom .tile.hover:focus-visible .hover {
  opacity: 1;
  pointer-events: auto;
  transform: translateX(0);
}
.tiles .tiles-bottom.col3 .tile {
  width: calc(33.333% - 26.666px);
  margin: 0 40px 40px 0;
  padding: 60px;
}
.tiles .tiles-bottom.col3 .tile:nth-child(3n) {
  margin-right: 0;
}
.tiles .tiles-bottom.col5 .tile {
  width: calc(20% - 16px);
  margin: 0 20px 20px 0;
  padding: 30px 15px;
  box-shadow: none;
  border: 1px solid var(--tero-grey-border);
}
.tiles .tiles-bottom.col5 .tile:nth-child(5n) {
  margin-right: 0;
}
.content-tiles .tiles-top {
  margin-bottom: 70px;
}
.content-tiles .tiles-top .headline,
.content-tiles .tiles-top .text {
  text-align: center;
}
.content-tiles .tiles-bottom {
  display: grid;
  gap: 60px;
}
.content-tiles .tiles-bottom.col3 {
  grid-template-columns: repeat(3, 1fr);
}
.content-tiles .tiles-bottom.col4 {
  grid-template-columns: repeat(4, 1fr);
}
.content-tiles .tile {
  box-shadow: none;
  border: 1px solid var(--tero-grey-border);
}
.content-tiles.contactpersons .tile {
  text-align: center;
}
.content-tiles.contactpersons .tile > .image {
  margin: 30px auto;
}
.timeline .timeline-bottom {
  margin: 30px auto;
  text-align: center;
}
.timeline .timeline-bottom .date:not(:last-child):after {
  content: "";
  display: block;
  margin: 20px auto;
  width: 1px;
  height: 30px;
  background: var(--tero-heading);
}
.accordion_container {
  position: relative;
}
.faq .accordion_container {
  margin-top: 60px;
}
.accordion_container .accordion {
  display: flex;
  flex-direction: column;
  box-shadow: var(--tero-shadow);
}
.accordion_container .accordion + .accordion {
  margin-top: 20px;
}
.accordion_content {
  display: none;
  padding: 0 30px 25px;
  position: relative;
}
.accordion_content .content-wrapper {
  column-count: 2;
  column-gap: 40px;
}
#c178 .accordion_content .content-wrapper,
#c180 .accordion_content .content-wrapper,
#c182 .accordion_content .content-wrapper,
#c184 .accordion_content .content-wrapper,
#c186 .accordion_content .content-wrapper,
#c188 .accordion_content .content-wrapper,
#c190 .accordion_content .content-wrapper,
#c191 .accordion_content .content-wrapper,
#c192 .accordion_content .content-wrapper {
  column-count: 1;
}
.accordion_content:before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  margin: 0 auto 25px;
  background: var(--tero-grey-border);
}
.accordion_trigger {
  position: relative;
  padding: 25px 50px 25px 30px;
  cursor: pointer;
}
.accordion_trigger:before {
  content: "";
  position: absolute;
  top: 0;
  right: 30px;
  width: 20px;
  height: 100%;
  background: url("./assets/dropdown-arrow-Z3VGECU3.svg") no-repeat center/20px auto;
  transition: .3s ease;
}
.accordion.act .accordion_trigger:before,
.accordion:hover .accordion_trigger:before,
.accordion:has(:focus-visible) .accordion_trigger:before {
  transform: rotate(180deg);
}
#c114.frame-type-pxtero_tiles h1,
#c114.frame-type-pxtero_tiles h2,
#c114.frame-type-pxtero_tiles h3,
#c114.frame-type-pxtero_tiles .headline,
#c114.frame-type-pxtero_tiles [class*=headline] {
  margin-top: 10px !important;
}
#c113.frame-type-pxtero_tiles h1,
#c113.frame-type-pxtero_tiles h2,
#c113.frame-type-pxtero_tiles h3,
#c113.frame-type-pxtero_tiles .headline,
#c113.frame-type-pxtero_tiles [class*=headline],
#c115.frame-type-pxtero_faq h1,
#c115.frame-type-pxtero_faq h2,
#c115.frame-type-pxtero_faq h3,
#c115.frame-type-pxtero_faq .headline,
#c115.frame-type-pxtero_faq [class*=headline] {
  margin-top: 10px !important;
}
#c115.frame-type-tero_accordion,
#c115.frame-type-tero_accordion .frame-header,
#c115.frame-type-tero_accordion header,
#c115.frame-type-tero_accordion h1,
#c115.frame-type-tero_accordion h2,
#c115.frame-type-tero_accordion h3,
#c115.frame-type-tero_accordion .headline,
#c115.frame-type-tero_accordion [class*=headline],
#c115.frame-type-tero_accordion .subheader {
  text-align: left;
}
#c115.frame-type-tero-accordion,
#c115.frame-type-tero-accordion .frame-header,
#c115.frame-type-tero-accordion header,
#c115.frame-type-tero-accordion h1,
#c115.frame-type-tero-accordion h2,
#c115.frame-type-tero-accordion h3,
#c115.frame-type-tero-accordion .headline,
#c115.frame-type-tero-accordion [class*=headline],
#c115.frame-type-tero-accordion .subheader {
  text-align: left;
}
#c115 .frame-header,
#c115 header,
#c115 h1,
#c115 h2,
#c115 h3,
#c115 h4,
#c115 .headline,
#c115 [class*=headline],
#c115 [class*=Headline],
#c115 [class*=header],
#c115 [class*=Header] {
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}
#c114 .frame-header h1,
#c114 .frame-header h2,
#c114 .frame-header h3,
#c114 .frame-header h4,
#c114 .frame-header .headline,
#c114 .frame-header [class*=headline],
#c114 .frame-header [class*=Headline],
#c243 .frame-header h1,
#c243 .frame-header h2,
#c243 .frame-header h3,
#c243 .frame-header h4,
#c243 .frame-header .headline,
#c243 .frame-header [class*=headline],
#c243 .frame-header [class*=Headline],
#c113 .frame-header h1,
#c113 .frame-header h2,
#c113 .frame-header h3,
#c113 .frame-header h4,
#c113 .frame-header .headline,
#c113 .frame-header [class*=headline],
#c113 .frame-header [class*=Headline],
#c115 .frame-header h1,
#c115 .frame-header h2,
#c115 .frame-header h3,
#c115 .frame-header h4,
#c115 .frame-header .headline,
#c115 .frame-header [class*=headline],
#c115 .frame-header [class*=Headline] {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c114 .frame-header .subheader,
#c114 .frame-header [class*=subheader],
#c114 .frame-header [class*=Subheader],
#c243 .frame-header .subheader,
#c243 .frame-header [class*=subheader],
#c243 .frame-header [class*=Subheader],
#c113 .frame-header .subheader,
#c113 .frame-header [class*=subheader],
#c113 .frame-header [class*=Subheader],
#c115 .frame-header .subheader,
#c115 .frame-header [class*=subheader],
#c115 .frame-header [class*=Subheader] {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
}
#c117 div.inner > div.textpicture.imageposition-right > div.textpicture_wrap > div.textpicture_text > h2.tero-supplementary-services__headline.textpicture_headline,
#c114 div.inner > div.tiles > div.tiles-top > div.tiles-top-left > h2.content_slider_headline.text- > p:nth-of-type(1),
#c195 div.inner > div.textpicture.imageposition-right > div.textpicture_wrap > div.textpicture_text > h2.tero-supplementary-services__headline.textpicture_headline,
#c112 div.inner > div.textpicture.imageposition-left > div.textpicture_wrap > div.textpicture_text > h2.tero-supplementary-services__headline.textpicture_headline,
#c243 div.inner > div.tero-social-media-wall__inner > h2.tero-social-media-wall__headline,
#c113 div.inner > div.tiles > div.tiles-top > div.tiles-top-left > h2.content_slider_headline.text- > p:nth-of-type(1),
#c115 div.inner > div.faq > h2.faq_headline.text-center {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c117 div.inner > div.textpicture.imageposition-right > div.textpicture_wrap > div.textpicture_text > p.tero-supplementary-services__roofline.textpicture_roofline,
#c114 div.inner > div.tiles > div.tiles-top > div.tiles-top-left > p.tiles_roofline.text-,
#c195 div.inner > div.textpicture.imageposition-right > div.textpicture_wrap > div.textpicture_text > p.tero-supplementary-services__roofline.textpicture_roofline,
#c112 div.inner > div.textpicture.imageposition-left > div.textpicture_wrap > div.textpicture_text > p.tero-supplementary-services__roofline.textpicture_roofline,
#c243 div.inner > div.tero-social-media-wall__inner > p.tero-social-media-wall__roofline,
#c113 div.inner > div.tiles > div.tiles-top > div.tiles-top-left > p.tiles_roofline.text-,
#c115 div.inner > div.faq > p.faq_roofline.text-center {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
}
#c127 div.inner > div.tiles > div.tiles-top > div.tiles-top-left > div.tero-intro-tiles-5__content > h1.tero-supplementary-services__headline.tero-intro-tiles-5__headline,
#c518 div.tero-text-info-card__inner > h2.tero-text-info-card__headline,
#c198 div.inner > div.dynamic-timeline > div.dynamic-timeline-header > h2.headline.text-center,
#c209 div.tero-location-team__inner > div.tero-location-team__header > h2.tero-supplementary-services__headline.tero-location-team__headline,
#c210 div.tero-location-team__inner > div.tero-location-team__header > h2.tero-supplementary-services__headline.tero-location-team__headline,
#c519 h2#tero-locations-overview-title-519 {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c127 div.inner > div.tiles > div.tiles-top > div.tiles-top-left > div.tero-intro-tiles-5__content > p.tero-supplementary-services__roofline.tero-intro-tiles-5__roofline,
#c209 div.tero-location-team__inner > div.tero-location-team__header > p.tero-supplementary-services__roofline.tero-location-team__eyebrow,
#c519 div.inner.tero-locations-overview__inner > div.tiles.tero-locations-overview__tiles > div.tiles-top.tero-locations-overview__intro > div.tiles-top-left.tero-locations-overview__intro-left > p.tiles_roofline.tero-locations-overview__eyebrow {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
}
#c160 div.inner > div.tiles > div.tiles-top > div.tiles-top-left > div.tero-intro-tiles-5__content > h1.tero-supplementary-services__headline.tero-intro-tiles-5__headline,
#c227 div.tero-interactive-service-cards__inner > h2.tero-interactive-service-cards__headline,
#c224 div.tero-supplementary-services__inner > h2.tero-supplementary-services__headline {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c160 div.inner > div.tiles > div.tiles-top > div.tiles-top-left > div.tero-intro-tiles-5__content > p.tero-supplementary-services__roofline.tero-intro-tiles-5__roofline,
#c227 div.tero-interactive-service-cards__inner > p.tero-interactive-service-cards__roofline {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
}
#c161 div.inner > div.tiles > div.tiles-top > div.tiles-top-left > div.tero-intro-tiles-5__content > h1.tero-supplementary-services__headline.tero-intro-tiles-5__headline,
#c229 div.tero-interactive-service-cards__inner > h2.tero-interactive-service-cards__headline,
#c73 div.tero-training-tiles-new__inner > header.tero-training-tiles-new__header > h2.tero-training-tiles-new__headline.tero-supplementary-services__headline,
#c75 div.tero-info-tiles-3-new__inner > header.tero-info-tiles-3-new__header > h2.tero-info-tiles-3-new__headline.tero-supplementary-services__headline,
#c237 div.inner > div.tero-flexible-text__inner > h2.tero-flexible-text__headline {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c161 div.inner > div.tiles > div.tiles-top > div.tiles-top-left > div.tero-intro-tiles-5__content > p.tero-supplementary-services__roofline.tero-intro-tiles-5__roofline,
#c229 div.tero-interactive-service-cards__inner > p.tero-interactive-service-cards__roofline,
#c73 div.tero-training-tiles-new__inner > header.tero-training-tiles-new__header > p.tero-training-tiles-new__roofline.tero-supplementary-services__roofline,
#c75 div.tero-info-tiles-3-new__inner > header.tero-info-tiles-3-new__header > p.tero-info-tiles-3-new__roofline.tero-supplementary-services__roofline,
#c237 div.inner > div.tero-flexible-text__inner > p.tero-flexible-text__roofline {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
}
#c213 h2#tero-locations-overview-title-213,
#c215 div.inner > div.tiles > div.tiles-top > div.tiles-top-left > div.tero-intro-tiles-5__content > h1.tero-supplementary-services__headline.tero-intro-tiles-5__headline {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c213 div.inner.tero-locations-overview__inner > div.tiles.tero-locations-overview__tiles > div.tiles-top.tero-locations-overview__intro > div.tiles-top-left.tero-locations-overview__intro-left > p.tiles_roofline.tero-locations-overview__eyebrow,
#c215 div.inner > div.tiles > div.tiles-top > div.tiles-top-left > div.tero-intro-tiles-5__content > p.tero-supplementary-services__roofline.tero-intro-tiles-5__roofline {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
}
#c222 section.tero-career-jobs__section > div.tero-career-jobs__inner > div.tero-career-jobs__intro > h1.tero-career-jobs__headline {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c222 section.tero-career-jobs__section > div.tero-career-jobs__inner > div.tero-career-jobs__intro > p.tero-career-jobs__roofline {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
}
#c149 section.tero-jobfinder-hero > div.tero-jobfinder-hero__content > h1:nth-of-type(1) {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c149 section.tero-jobfinder-hero > div.tero-jobfinder-hero__content > p.tero-jobfinder-roofline {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
}
#c149 section.tero-jobfinder-hero > div.tero-jobfinder-hero__content > h1:nth-of-type(1) {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c149 section.tero-jobfinder-hero > div.tero-jobfinder-hero__content > p.tero-jobfinder-roofline {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
}
#c222 section.tero-career-jobs__section > div.tero-career-jobs__inner > div.tero-career-jobs__intro > h1.tero-career-jobs__headline {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c222 section.tero-career-jobs__section > div.tero-career-jobs__inner > div.tero-career-jobs__intro > p.tero-career-jobs__roofline {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
}
#c235 div.tero-location-detail__inner > aside.tero-location-detail__contact-card > h1:nth-of-type(1),
#c234 div.tero-location-detail__inner > aside.tero-location-detail__contact-card > h1:nth-of-type(1),
#c233 div.tero-location-detail__inner > aside.tero-location-detail__contact-card > h1:nth-of-type(1) {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c235 div.tero-location-detail__inner > aside.tero-location-detail__contact-card > p.tero-location-detail__eyebrow,
#c234 div.tero-location-detail__inner > aside.tero-location-detail__contact-card > p.tero-location-detail__eyebrow,
#c233 div.tero-location-detail__inner > aside.tero-location-detail__contact-card > p.tero-location-detail__eyebrow {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
}
#c201 div.tero-location-team__inner > div.tero-location-team__header > h2:nth-of-type(1),
#c202 div.tero-location-team__inner > div.tero-location-team__header > h2:nth-of-type(1),
#c200 div.tero-location-team__inner > div.tero-location-team__header > h2:nth-of-type(1) {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: center !important;
}
#c201 div.tero-location-team__inner > div.tero-location-team__header > p.tero-location-team__eyebrow,
#c202 div.tero-location-team__inner > div.tero-location-team__header > p.tero-location-team__eyebrow,
#c200 div.tero-location-team__inner > div.tero-location-team__header > p.tero-location-team__eyebrow {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: center !important;
  text-transform: uppercase !important;
}
#c512 div.tero-faq-topic-buttons__inner > h1.tero-faq-topic-buttons__headline {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c512 div.tero-faq-topic-buttons__inner > p.tero-faq-topic-buttons__roofline {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
}
#c196 div.inner > div.tiles > div.tiles-top > div.tiles-top-left > h1.content_slider_headline.text- {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c196 div.inner > div.tiles > div.tiles-top > div.tiles-top-left > p.tiles_roofline.text- {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
}
#c178 div.inner > div.faq > h2.faq_headline.text-center,
#c182 div.inner > div.faq > h2.faq_headline.text-center,
#c184 div.inner > div.faq > h2.faq_headline.text-center,
#c186 div.inner > div.faq > h2.faq_headline.text-center,
#c188 div.inner > div.faq > h2.faq_headline.text-center,
#c190 div.inner > div.faq > h2.faq_headline.text-center,
#c191 div.inner > div.faq > h2.faq_headline.text-center,
#c180 div.inner > div.faq > h2.faq_headline.text-center,
#c192 div.inner > div.faq > h2.faq_headline.text-center {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c178 div.inner > div.faq > h2.faq_headline.text-center,
#c182 div.inner > div.faq > h2.faq_headline.text-center,
#c184 div.inner > div.faq > h2.faq_headline.text-center,
#c186 div.inner > div.faq > h2.faq_headline.text-center,
#c188 div.inner > div.faq > h2.faq_headline.text-center,
#c190 div.inner > div.faq > h2.faq_headline.text-center,
#c191 div.inner > div.faq > h2.faq_headline.text-center,
#c180 div.inner > div.faq > h2.faq_headline.text-center,
#c192 div.inner > div.faq > h2.faq_headline.text-center {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c121 header:nth-of-type(1) > h1.ce-headline-center {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c120 div.inner > p.text-justify:nth-of-type(1),
#c120 div.inner > p.text-justify:nth-of-type(2),
#c120 div.inner > p.text-justify:nth-of-type(3),
#c120 div.inner > p.text-justify:nth-of-type(4),
#c120 div.inner > p.text-justify:nth-of-type(5),
#c120 div.inner > p.text-justify:nth-of-type(6),
#c120 div.inner > p.text-justify:nth-of-type(7) {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}
#c120 div.inner > p.text-justify:nth-of-type(1)::before,
#c120 div.inner > p.text-justify:nth-of-type(2)::before,
#c120 div.inner > p.text-justify:nth-of-type(3)::before,
#c120 div.inner > p.text-justify:nth-of-type(4)::before,
#c120 div.inner > p.text-justify:nth-of-type(5)::before,
#c120 div.inner > p.text-justify:nth-of-type(6)::before,
#c120 div.inner > p.text-justify:nth-of-type(7)::before {
  content: "" !important;
  display: inline-block !important;
  width: 22px !important;
  height: 10px !important;
  flex: 0 0 22px !important;
  background: linear-gradient(var(--tero-ci-red), var(--tero-ci-red)) left center / 8px 8px no-repeat, linear-gradient(var(--tero-ci-red), var(--tero-ci-red)) right center / 8px 8px no-repeat !important;
}
#c121 header:nth-of-type(1) > h1.ce-headline-center {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: start !important;
}
#c120 div.inner > p.text-justify,
#c120 div.inner > p.text-justify > strong:nth-of-type(1) {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  color: inherit !important;
  line-height: inherit !important;
  text-align: inherit !important;
  text-transform: none !important;
  display: revert !important;
  align-items: revert !important;
  gap: revert !important;
}
#c120 div.inner > p.text-justify::before,
#c120 div.inner > p.text-justify > strong:nth-of-type(1)::before {
  content: none !important;
  display: none !important;
}
#c120 div.inner:nth-child(1) > p:nth-child(2),
#c120 div.inner:nth-child(1) > p:nth-child(15),
#c120 div.inner:nth-child(1) > p:nth-child(35),
#c120 div.inner:nth-child(1) > p:nth-child(44),
#c120 div.inner:nth-child(1) > p:nth-child(46),
#c120 div.inner:nth-child(1) > p:nth-child(65),
#c120 div.inner:nth-child(1) > p:nth-child(75) {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}
#c120 div.inner:nth-child(1) > p:nth-child(2)::before,
#c120 div.inner:nth-child(1) > p:nth-child(15)::before,
#c120 div.inner:nth-child(1) > p:nth-child(35)::before,
#c120 div.inner:nth-child(1) > p:nth-child(44)::before,
#c120 div.inner:nth-child(1) > p:nth-child(46)::before,
#c120 div.inner:nth-child(1) > p:nth-child(65)::before,
#c120 div.inner:nth-child(1) > p:nth-child(75)::before {
  content: "" !important;
  display: inline-block !important;
  width: 22px !important;
  height: 10px !important;
  flex: 0 0 22px !important;
  background: linear-gradient(var(--tero-ci-red), var(--tero-ci-red)) left center / 8px 8px no-repeat, linear-gradient(var(--tero-ci-red), var(--tero-ci-red)) right center / 8px 8px no-repeat !important;
}
#c120 div.inner:nth-child(1) > p:nth-child(2)::before,
#c120 div.inner:nth-child(1) > p:nth-child(15)::before,
#c120 div.inner:nth-child(1) > p:nth-child(35)::before,
#c120 div.inner:nth-child(1) > p:nth-child(44)::before,
#c120 div.inner:nth-child(1) > p:nth-child(46)::before,
#c120 div.inner:nth-child(1) > p:nth-child(65)::before,
#c120 div.inner:nth-child(1) > p:nth-child(75)::before {
  content: none !important;
  display: none !important;
  background: none !important;
}
#c120 div.inner:nth-child(1) > p:nth-child(2),
#c120 div.inner:nth-child(1) > p:nth-child(15),
#c120 div.inner:nth-child(1) > p:nth-child(35),
#c120 div.inner:nth-child(1) > p:nth-child(44),
#c120 div.inner:nth-child(1) > p:nth-child(46),
#c120 div.inner:nth-child(1) > p:nth-child(65),
#c120 div.inner:nth-child(1) > p:nth-child(75) {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
  display: block !important;
  gap: normal !important;
  align-items: initial !important;
  margin-bottom: 10px !important;
}
#c120 div.inner > p.text-justify::before,
#c120 div.inner > p.text-justify > strong:nth-of-type(1)::before {
  content: none !important;
  display: none !important;
  background: none !important;
}
#c120 div.inner:nth-child(1) > p:nth-child(2),
#c120 div.inner:nth-child(1) > p:nth-child(15),
#c120 div.inner:nth-child(1) > p:nth-child(35),
#c120 div.inner:nth-child(1) > p:nth-child(44),
#c120 div.inner:nth-child(1) > p:nth-child(46),
#c120 div.inner:nth-child(1) > p:nth-child(65),
#c120 div.inner:nth-child(1) > p:nth-child(75),
#c120 div.inner:nth-child(1) > p:nth-child(65) > strong:first-child {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
  display: block !important;
  background: none !important;
  background-image: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}
#c120 div.inner:nth-child(1) > p:nth-child(2)::before,
#c120 div.inner:nth-child(1) > p:nth-child(2)::after,
#c120 div.inner:nth-child(1) > p:nth-child(2) *::before,
#c120 div.inner:nth-child(1) > p:nth-child(2) *::after,
#c120 div.inner:nth-child(1) > p:nth-child(15)::before,
#c120 div.inner:nth-child(1) > p:nth-child(15)::after,
#c120 div.inner:nth-child(1) > p:nth-child(15) *::before,
#c120 div.inner:nth-child(1) > p:nth-child(15) *::after,
#c120 div.inner:nth-child(1) > p:nth-child(35)::before,
#c120 div.inner:nth-child(1) > p:nth-child(35)::after,
#c120 div.inner:nth-child(1) > p:nth-child(35) *::before,
#c120 div.inner:nth-child(1) > p:nth-child(35) *::after,
#c120 div.inner:nth-child(1) > p:nth-child(44)::before,
#c120 div.inner:nth-child(1) > p:nth-child(44)::after,
#c120 div.inner:nth-child(1) > p:nth-child(44) *::before,
#c120 div.inner:nth-child(1) > p:nth-child(44) *::after,
#c120 div.inner:nth-child(1) > p:nth-child(46)::before,
#c120 div.inner:nth-child(1) > p:nth-child(46)::after,
#c120 div.inner:nth-child(1) > p:nth-child(46) *::before,
#c120 div.inner:nth-child(1) > p:nth-child(46) *::after,
#c120 div.inner:nth-child(1) > p:nth-child(65)::before,
#c120 div.inner:nth-child(1) > p:nth-child(65)::after,
#c120 div.inner:nth-child(1) > p:nth-child(65) *::before,
#c120 div.inner:nth-child(1) > p:nth-child(65) *::after,
#c120 div.inner:nth-child(1) > p:nth-child(75)::before,
#c120 div.inner:nth-child(1) > p:nth-child(75)::after,
#c120 div.inner:nth-child(1) > p:nth-child(75) *::before,
#c120 div.inner:nth-child(1) > p:nth-child(75) *::after {
  content: none !important;
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  flex: 0 0 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  mask: none !important;
  -webkit-mask: none !important;
}
#c120 div.inner:nth-child(1) > p:nth-child(2),
#c120 div.inner:nth-child(1) > p:nth-child(15),
#c120 div.inner:nth-child(1) > p:nth-child(35),
#c120 div.inner:nth-child(1) > p:nth-child(44),
#c120 div.inner:nth-child(1) > p:nth-child(46),
#c120 div.inner:nth-child(1) > p:nth-child(65),
#c120 div.inner:nth-child(1) > p:nth-child(75) {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--tero-ci-red) !important;
  line-height: 25px !important;
  text-align: start !important;
  text-transform: uppercase !important;
  display: block !important;
  position: relative !important;
  z-index: 0 !important;
  isolation: isolate !important;
  background: none !important;
  background-image: none !important;
}
#c120 div.inner:nth-child(1) > p:nth-child(2)::before,
#c120 div.inner:nth-child(1) > p:nth-child(15)::before,
#c120 div.inner:nth-child(1) > p:nth-child(35)::before,
#c120 div.inner:nth-child(1) > p:nth-child(44)::before,
#c120 div.inner:nth-child(1) > p:nth-child(46)::before,
#c120 div.inner:nth-child(1) > p:nth-child(65)::before,
#c120 div.inner:nth-child(1) > p:nth-child(75)::before {
  content: "" !important;
  display: block !important;
  visibility: visible !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 70px !important;
  height: 70px !important;
  transform: translate(-100px, -85px) !important;
  background: rgb(241, 242, 244) !important;
  background-color: rgb(241, 242, 244) !important;
  border: 0 !important;
  box-shadow: none !important;
  z-index: -1 !important;
  opacity: 1 !important;
}
#c120 div.inner:nth-child(1) > p:nth-child(2)::after,
#c120 div.inner:nth-child(1) > p:nth-child(15)::after,
#c120 div.inner:nth-child(1) > p:nth-child(35)::after,
#c120 div.inner:nth-child(1) > p:nth-child(44)::after,
#c120 div.inner:nth-child(1) > p:nth-child(46)::after,
#c120 div.inner:nth-child(1) > p:nth-child(65)::after,
#c120 div.inner:nth-child(1) > p:nth-child(75)::after {
  content: "" !important;
  display: block !important;
  visibility: visible !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 40px !important;
  height: 40px !important;
  transform: translate(-30px, -10px) !important;
  background: rgb(241, 242, 244) !important;
  background-color: rgb(241, 242, 244) !important;
  border: 0 !important;
  box-shadow: none !important;
  z-index: -1 !important;
  opacity: 1 !important;
}
#c142 div.inner > h4:nth-of-type(1),
#c143 div.inner > h4:nth-of-type(1) {
  font-family:
    "Roboto Condensed",
    Verdana,
    Arial,
    sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  color: rgb(62, 62, 62) !important;
  line-height: 48px !important;
  text-align: center !important;
}

/* Resources/Public/Css/content-elements/forms-maps-sticky-legacy.css */
input,
select,
textarea {
  width: 100%;
  border: 1px solid #dadada;
  padding: 10px 15px;
}
input:focus,
select:focus,
textarea:focus {
  border-color: var(--tero-ci-red);
}
textarea {
  height: 150px;
  resize: none;
}
input[type=radio],
input[type=checkbox] {
  width: 24px;
  height: 24px;
  margin-right: 5px;
}
.cr_form label {
  display: none;
}
.cr_form .cr_ipe_item + .cr_ipe_item {
  margin-top: 10px;
}
.tx-powermail .mandatory,
.tero-job-application-form .mandatory {
  color: var(--tero-ci-red);
}
.tx-powermail h3 {
  display: none;
}
.tx-powermail .powermail_fieldwrap + .powermail_fieldwrap {
  margin-top: 20px;
}
.tx-powermail .greyboxpowermail {
  background: var(--tero-grey);
  padding: 2%;
}
.tx-powermail .powermail_fieldwrap_datenschutzerklaerung .powermail_field {
  font-size: 13px;
  line-height: 140%;
}
.frc-container .frc-content .frc-button {
  color: #fff !important;
  background: var(--tero-ci-red);
  font-weight: 700;
  border-radius: 28px;
  border: 0;
  padding: 10px;
}
.frc-container .frc-content .frc-button:hover {
  background: var(--tero-ci-red) !important;
  color: #fff !important;
  cursor: pointer;
}
.sticky-buttons {
  position: fixed;
  right: 0;
  top: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  transform: translateY(-50%);
  z-index: 99;
  font-family: var(--font-head);
  pointer-events: none;
}
.sticky-buttons ul li {
  background: #fff;
  padding: 10px 15px;
  box-shadow: var(--tero-shadow);
  transform: translateX(calc(100% - 50px));
  transition: .3s ease;
  pointer-events: auto;
}
.sticky-buttons ul li:hover,
.sticky-buttons ul li:focus-within {
  transform: translateX(0);
}
.sticky-buttons ul li + li {
  margin-top: 15px;
}
.sticky-buttons a {
  display: flex;
  align-items: center;
  color: var(--tero-heading);
}
.sticky-buttons .mail:before,
.sticky-buttons .phone:before,
.sticky-buttons .facebook:before,
.sticky-buttons .xing:before,
.sticky-buttons .instagram:before {
  content: "";
  display: inline-block;
  margin-right: 10px;
  width: 35px;
  height: 30px;
  border-right: 1px solid var(--tero-grey);
  background: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23b81834%22 stroke-width=%222%22%3E%3Crect x=%223%22 y=%225%22 width=%2218%22 height=%2214%22 rx=%222%22/%3E%3Cpath d=%22m4 7 8 6 8-6%22/%3E%3C/svg%3E") no-repeat left center/22px auto;
}
.sticky-buttons .phone:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23b81834%22 stroke-width=%222%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M5 3h4l2 5-3 2a15 15 0 0 0 6 6l2-3 5 2v4c0 1-1 2-2 2A16 16 0 0 1 3 5c0-1 1-2 2-2Z%22/%3E%3C/svg%3E");
}
.sticky-buttons .facebook:before {
  background: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22%23b81834%22%3E%3Cpath d=%22M14 8h4V4h-4c-4 0-6 2-6 6v2H5v4h3v8h5v-8h4l1-4h-5v-2c0-1.4.6-2 1-2Z%22/%3E%3C/svg%3E") no-repeat 5px center/11px auto;
}
.sticky-buttons .xing:before {
  background: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22%23b81834%22%3E%3Cpath d=%22M3 7h5l3 5-5 8H1l5-8-3-5Zm13-7h5l-7 12 5 12h-5L9 12 16 0Z%22/%3E%3C/svg%3E") no-repeat 1px center/19px auto;
}
.sticky-buttons .instagram:before {
  background: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23b81834%22 stroke-width=%222%22%3E%3Crect x=%223%22 y=%223%22 width=%2218%22 height=%2218%22 rx=%225%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%224%22/%3E%3Ccircle cx=%2217.5%22 cy=%226.5%22 r=%221%22 fill=%22%23b81834%22 stroke=%22none%22/%3E%3C/svg%3E") no-repeat 1px center/22px auto;
}
.sticky-buttons .sticky-button-has-icon:before {
  content: none;
  display: none;
}
.sticky-buttons .sticky-button-icon {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  flex: 0 0 35px;
  width: 35px;
  height: 30px;
  margin-right: 10px;
  border-right: 1px solid var(--tero-grey);
}
.sticky-buttons .sticky-button-icon img {
  display: block;
  max-width: 22px;
  max-height: 22px;
  width: auto;
  height: auto;
}
[class^=map_image_wrap_uid] {
  text-align: center;
}
[class^=map_image_wrap_uid] .map_image_wrap_inner {
  max-width: var(--tero-wide);
  margin: 10px auto 0;
  position: relative;
  height: 500px;
  overflow: hidden;
}
[class^=map_image_wrap_uid] .map_image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(3px);
}
[class^=map_image_wrap_uid] .map_btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 92%;
  max-width: 800px;
  padding: 30px;
  background: #fff;
  border-radius: 10px;
  box-shadow: var(--tero-shadow);
  text-align: center;
}
[id^=map_uid] {
  height: 500px;
  width: 100%;
  margin-top: 10px;
}
.tero-location-maps__route {
  margin-top: 1.25rem;
  margin-bottom: 0;
}
.tero-location-maps {
  background: transparent !important;
}
.tero-location-maps > .inner {
  width: min(1160px, calc(100% - 48px));
  max-width: 1160px;
  margin-left: auto;
  margin-right: auto;
}
.tero-location-maps .tero-location-maps__row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(24px, 3vw, 40px);
  align-items: stretch !important;
}
.tero-location-maps .tero-location-maps__map-col,
.tero-location-maps .tero-location-maps__text-col {
  display: flex !important;
  width: 100%;
}
.tero-location-maps .tero-location-maps__map-card,
.tero-location-maps .tero-location-maps__info-card {
  box-sizing: border-box;
  width: 100%;
  min-height: clamp(340px, 34vw, 460px);
}
.tero-location-maps .tero-location-maps__map-card,
.tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap],
.tero-location-maps .tero-map-consent {
  height: 100%;
}
.tero-location-maps .tero-map-consent {
  min-height: clamp(340px, 34vw, 460px);
}
.tero-location-maps .tero-location-maps__info-card {
  display: flex;
  align-items: center;
  padding: clamp(28px, 4vw, 48px);
  border: 8px solid var(--tero-ci-red);
  border-radius: 28px;
  background:
    linear-gradient(
      135deg,
      #fff 0%,
      #f7f7f8 100%);
  box-shadow: 0 18px 44px rgba(27, 31, 38, .08);
}
.tero-location-maps .tero-location-maps__text {
  width: 100%;
  color: #4b5563;
  font-size: 18px;
  line-height: 1.65;
}
.tero-location-maps .tero-location-maps__text > :first-child {
  margin-top: 0;
}
.tero-location-maps .tero-location-maps__text > :last-child {
  margin-bottom: 0;
}
.tero-location-maps .tero-location-maps__route {
  margin-top: 1.5rem;
  margin-bottom: 0;
}
.tero-location-maps .tero-location-maps__route-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}
@media (max-width: 900px) {
  .tero-location-maps .tero-location-maps__row {
    grid-template-columns: 1fr;
  }
  .tero-location-maps .tero-location-maps__info-card {
    min-height: auto;
  }
}
@media (max-width: 720px) {
  .tero-location-maps > .inner {
    width: min(1160px, calc(100% - 28px));
  }
  .tero-location-maps .tero-location-maps__info-card {
    padding: 24px;
    border-width: 6px;
    border-radius: 22px;
  }
}
.tero-location-maps .tero-location-maps__row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: clamp(24px, 3vw, 40px) !important;
  align-items: stretch !important;
}
.tero-location-maps .tero-location-maps__map-col,
.tero-location-maps .tero-location-maps__text-col {
  display: flex !important;
  width: 100% !important;
  float: none !important;
}
.tero-location-maps .tero-location-maps__map-card,
.tero-location-maps .tero-location-maps__info-card {
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: clamp(340px, 34vw, 460px) !important;
  border-radius: 28px !important;
}
.tero-location-maps .tero-location-maps__map-card {
  overflow: hidden !important;
  background: #fff !important;
  box-shadow: 0 18px 44px rgba(27, 31, 38, .08) !important;
}
.tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap],
.tero-location-maps .tero-map-consent {
  height: 100% !important;
  min-height: clamp(340px, 34vw, 460px) !important;
  border-radius: 28px !important;
}
.tero-location-maps .tero-location-maps__info-card {
  display: flex !important;
  align-items: center !important;
  padding: clamp(32px, 4vw, 48px) !important;
  border: 8px solid var(--tero-ci-red) !important;
  background:
    linear-gradient(
      135deg,
      #fff 0%,
      #f7f7f8 100%) !important;
  box-shadow: 0 18px 44px rgba(27, 31, 38, .08) !important;
}
.tero-location-maps .tero-location-maps__text {
  width: 100% !important;
  color: #4b5563 !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
}
.tero-location-maps .tero-location-maps__text > :first-child {
  margin-top: 0 !important;
}
.tero-location-maps .tero-location-maps__text > :last-child {
  margin-bottom: 0 !important;
}
.tero-location-maps .tero-location-maps__route {
  margin-top: 1.5rem !important;
  margin-bottom: 0 !important;
}
.tero-location-maps .tero-location-maps__route-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}
@media (max-width: 900px) {
  .tero-location-maps .tero-location-maps__row {
    grid-template-columns: 1fr !important;
  }
  .tero-location-maps .tero-location-maps__info-card {
    min-height: auto !important;
  }
}
@media (max-width: 720px) {
  .tero-location-maps .tero-location-maps__map-card,
  .tero-location-maps .tero-location-maps__info-card,
  .tero-location-maps .tero-map-consent {
    border-radius: 22px !important;
  }
  .tero-location-maps .tero-location-maps__info-card {
    padding: 24px !important;
    border-width: 6px !important;
  }
}
.tero-location-maps .tero-location-maps__row {
  align-items: stretch !important;
  gap: clamp(28px, 4vw, 52px) !important;
}
.tero-location-maps .tero-location-maps__map-card,
.tero-location-maps .tero-location-maps__info-card {
  min-height: 420px !important;
  border-radius: 26px !important;
  box-shadow: 0 18px 44px rgba(27, 31, 38, .10) !important;
}
.tero-location-maps .tero-location-maps__map-card {
  overflow: hidden !important;
  background: #f1f2f4 !important;
}
.tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap] {
  height: 100% !important;
  min-height: 420px !important;
  border-radius: 26px !important;
  overflow: hidden !important;
  background: #f1f2f4 !important;
}
.tero-location-maps .tero-map-consent {
  height: 100% !important;
  min-height: 420px !important;
  border-radius: 26px !important;
  background: #f1f2f4 !important;
  box-shadow: none !important;
}
.tero-location-maps .tero-location-maps__info-card {
  align-items: center !important;
  padding: clamp(42px, 5vw, 58px) !important;
  border: 6px solid var(--tero-ci-red) !important;
  background:
    linear-gradient(
      135deg,
      #fff 0%,
      #fbfbfc 100%) !important;
}
.tero-location-maps .tero-location-maps__text {
  max-width: 430px !important;
  margin: 0 auto !important;
}
.tero-location-maps .tero-location-maps__route {
  margin-top: 1.75rem !important;
}
@media (max-width: 900px) {
  .tero-location-maps .tero-location-maps__map-card,
  .tero-location-maps .tero-location-maps__info-card,
  .tero-location-maps .tero-map-consent,
  .tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap] {
    min-height: 360px !important;
  }
  .tero-location-maps .tero-location-maps__text {
    max-width: none !important;
  }
}
@media (max-width: 720px) {
  .tero-location-maps .tero-location-maps__map-card,
  .tero-location-maps .tero-location-maps__info-card,
  .tero-location-maps .tero-map-consent,
  .tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap] {
    min-height: 320px !important;
    border-radius: 22px !important;
  }
  .tero-location-maps .tero-location-maps__info-card {
    padding: 28px !important;
    border-width: 5px !important;
  }
}
.tero-location-maps {
  background: transparent !important;
}
.tero-location-maps > .inner {
  box-sizing: border-box !important;
  width: min(1160px, calc(100% - 48px)) !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.tero-location-maps > .inner > .frame > .inner {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.tero-location-maps .tero-location-maps__row {
  display: grid !important;
  grid-template-columns: minmax(0, 7fr) minmax(280px, 3fr) !important;
  gap: clamp(24px, 3vw, 38px) !important;
  align-items: stretch !important;
  width: 100% !important;
}
.tero-location-maps .tero-location-maps__map-col,
.tero-location-maps .tero-location-maps__text-col {
  display: flex !important;
  width: 100% !important;
  max-width: none !important;
  float: none !important;
}
.tero-location-maps .tero-location-maps__map-card {
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 420px !important;
  overflow: hidden !important;
  border: 2px solid rgba(0, 0, 0, .72) !important;
  border-radius: 26px !important;
  background: #f1f2f4 !important;
  box-shadow: 0 18px 44px rgba(27, 31, 38, .14) !important;
}
.tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap],
.tero-location-maps .tero-map-consent {
  height: 100% !important;
  min-height: 416px !important;
  border-radius: 24px !important;
  background: #f1f2f4 !important;
  box-shadow: none !important;
}
.tero-location-maps .tero-location-maps__info-card {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 420px !important;
  padding: clamp(28px, 3vw, 42px) !important;
  border: 6px solid var(--tero-ci-red) !important;
  border-radius: 26px !important;
  background:
    linear-gradient(
      135deg,
      #fff 0%,
      #fbfbfc 100%) !important;
  box-shadow: 0 18px 44px rgba(27, 31, 38, .10) !important;
}
.tero-location-maps .tero-location-maps__text {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  color: #17243a !important;
  font-size: 17px !important;
  line-height: 1.6 !important;
}
.tero-location-maps .tero-location-maps__route {
  margin-top: 1.5rem !important;
  margin-bottom: 0 !important;
}
.tero-location-maps .tero-location-maps__route-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}
@media (max-width: 900px) {
  .tero-location-maps .tero-location-maps__row {
    grid-template-columns: 1fr !important;
  }
  .tero-location-maps .tero-location-maps__map-card,
  .tero-location-maps .tero-location-maps__info-card,
  .tero-location-maps .tero-map-consent,
  .tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap] {
    min-height: 360px !important;
  }
}
@media (max-width: 720px) {
  .tero-location-maps > .inner {
    width: min(1160px, calc(100% - 28px)) !important;
  }
  .tero-location-maps .tero-location-maps__map-card,
  .tero-location-maps .tero-location-maps__info-card,
  .tero-location-maps .tero-map-consent,
  .tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap] {
    border-radius: 22px !important;
    min-height: 320px !important;
  }
  .tero-location-maps .tero-location-maps__info-card {
    padding: 24px !important;
    border-width: 5px !important;
  }
}
.tero-location-maps {
  background: transparent !important;
}
.tero-location-maps > .inner {
  box-sizing: border-box !important;
  width: min(1160px, calc(100% - 48px)) !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.tero-location-maps > .inner > .frame,
.tero-location-maps > .inner > .frame > .inner,
.tero-location-maps .tero-location-maps__row,
.tero-location-maps .tero-location-maps__map-col,
.tero-location-maps .tero-location-maps__text-col {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  float: none !important;
}
.tero-location-maps .tero-location-maps__row {
  display: grid !important;
  grid-template-columns: minmax(0, 72fr) minmax(260px, 28fr) !important;
  gap: clamp(24px, 3vw, 36px) !important;
  align-items: stretch !important;
}
.tero-location-maps .tero-location-maps__map-col,
.tero-location-maps .tero-location-maps__text-col {
  display: flex !important;
}
.tero-location-maps .tero-location-maps__map-card,
.tero-location-maps .tero-location-maps__info-card {
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 430px !important;
  border-radius: 26px !important;
  box-shadow: 0 18px 44px rgba(27, 31, 38, .10) !important;
}
.tero-location-maps .tero-location-maps__map-card {
  overflow: hidden !important;
  border: 1px solid color-mix(in srgb, var(--tero-ci-red) 55%, transparent) !important;
  background: #f1f2f4 !important;
}
.tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap] {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 430px !important;
  border-radius: 25px !important;
  overflow: hidden !important;
  background: #f1f2f4 !important;
}
.tero-location-maps .tero-map-consent {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 430px !important;
  border-radius: 25px !important;
  background: #f1f2f4 !important;
  box-shadow: none !important;
}
.tero-location-maps .tero-location-maps__map-card iframe,
.tero-location-maps .tero-location-maps__map-card .map_image_wrap iframe,
.tero-location-maps .tero-location-maps__map-card [class*=map_image_wrap] iframe {
  display: block !important;
  width: 100% !important;
  height: 430px !important;
  min-height: 430px !important;
  border: 0 !important;
  border-radius: 25px !important;
}
.tero-location-maps .tero-map-consent iframe {
  width: 100% !important;
  height: 430px !important;
  min-height: 430px !important;
  border: 0 !important;
  border-radius: 25px !important;
}
.tero-location-maps .tero-location-maps__info-card {
  display: flex !important;
  align-items: center !important;
  padding: clamp(28px, 3vw, 40px) !important;
  border: 6px solid var(--tero-ci-red) !important;
  background:
    linear-gradient(
      135deg,
      #fff 0%,
      #fbfbfc 100%) !important;
}
.tero-location-maps .tero-location-maps__text {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  color: #17243a !important;
  font-size: 17px !important;
  line-height: 1.6 !important;
}
.tero-location-maps .tero-location-maps__text > :first-child {
  margin-top: 0 !important;
}
.tero-location-maps .tero-location-maps__text > :last-child {
  margin-bottom: 0 !important;
}
.tero-location-maps .tero-location-maps__route {
  margin-top: 1.5rem !important;
  margin-bottom: 0 !important;
}
.tero-location-maps .tero-location-maps__route-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}
@media (max-width: 900px) {
  .tero-location-maps .tero-location-maps__row {
    grid-template-columns: 1fr !important;
  }
  .tero-location-maps .tero-location-maps__map-card,
  .tero-location-maps .tero-location-maps__info-card,
  .tero-location-maps .tero-map-consent,
  .tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap] {
    min-height: 360px !important;
  }
  .tero-location-maps .tero-location-maps__map-card iframe,
  .tero-location-maps .tero-map-consent iframe,
  .tero-location-maps .tero-location-maps__map-card [class*=map_image_wrap] iframe {
    height: 360px !important;
    min-height: 360px !important;
  }
}
@media (max-width: 720px) {
  .tero-location-maps > .inner {
    width: min(1160px, calc(100% - 28px)) !important;
  }
  .tero-location-maps .tero-location-maps__map-card,
  .tero-location-maps .tero-location-maps__info-card,
  .tero-location-maps .tero-map-consent,
  .tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap],
  .tero-location-maps .tero-location-maps__map-card iframe {
    border-radius: 22px !important;
    min-height: 320px !important;
  }
  .tero-location-maps .tero-location-maps__map-card iframe,
  .tero-location-maps .tero-map-consent iframe,
  .tero-location-maps .tero-location-maps__map-card [class*=map_image_wrap] iframe {
    height: 320px !important;
    min-height: 320px !important;
  }
  .tero-location-maps .tero-location-maps__info-card {
    padding: 24px !important;
    border-width: 5px !important;
  }
}
.tero-location-maps {
  background: transparent !important;
}
.tero-location-maps > .inner {
  box-sizing: border-box !important;
  width: min(1160px, calc(100% - 48px)) !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.tero-location-maps .frame,
.tero-location-maps .inner,
.tero-location-maps .gridrow,
.tero-location-maps .col {
  box-sizing: border-box !important;
  max-width: none !important;
}
.tero-location-maps > .inner .frame,
.tero-location-maps > .inner .inner,
.tero-location-maps > .inner .gridrow {
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.tero-location-maps .col {
  float: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.tero-location-maps .tero-location-maps__row {
  display: grid !important;
  grid-template-columns: minmax(0, 72fr) minmax(260px, 28fr) !important;
  gap: 36px !important;
  align-items: stretch !important;
}
.tero-location-maps .tero-location-maps__map-col,
.tero-location-maps .tero-location-maps__text-col {
  display: flex !important;
  min-width: 0 !important;
}
.tero-location-maps .tero-location-maps__map-card,
.tero-location-maps .tero-location-maps__info-card {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 430px !important;
  min-height: 430px !important;
  border-radius: 26px !important;
  box-shadow: 0 18px 44px rgba(27, 31, 38, .12) !important;
}
.tero-location-maps .tero-location-maps__map-card {
  position: relative !important;
  overflow: hidden !important;
  border: 1px solid color-mix(in srgb, var(--tero-ci-red) 55%, transparent) !important;
  background: #f1f2f4 !important;
}
.tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap] {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 25px !important;
  overflow: hidden !important;
  background: #f1f2f4 !important;
}
.tero-location-maps .tero-map-consent {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 25px !important;
  background: #f1f2f4 !important;
  box-shadow: none !important;
}
.tero-location-maps .tero-location-maps__map-card iframe,
.tero-location-maps .tero-location-maps__map-card [class*=map_image_wrap] iframe,
.tero-location-maps .tero-map-consent iframe {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 25px !important;
}
.tero-location-maps .tero-location-maps__info-card {
  display: flex !important;
  align-items: center !important;
  padding: clamp(28px, 3vw, 40px) !important;
  border: 6px solid var(--tero-ci-red) !important;
  background:
    linear-gradient(
      135deg,
      #fff 0%,
      #fbfbfc 100%) !important;
}
.tero-location-maps .tero-location-maps__text {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  color: #17243a !important;
  font-size: 17px !important;
  line-height: 1.6 !important;
}
.tero-location-maps .tero-location-maps__route {
  margin-top: 1.5rem !important;
  margin-bottom: 0 !important;
}
.tero-location-maps .tero-location-maps__route-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}
@media (max-width: 900px) {
  .tero-location-maps .tero-location-maps__row {
    grid-template-columns: 1fr !important;
  }
  .tero-location-maps .tero-location-maps__map-card,
  .tero-location-maps .tero-location-maps__info-card {
    height: auto !important;
    min-height: 360px !important;
  }
}
@media (max-width: 720px) {
  .tero-location-maps > .inner {
    width: min(1160px, calc(100% - 28px)) !important;
  }
  .tero-location-maps .tero-location-maps__map-card,
  .tero-location-maps .tero-location-maps__info-card,
  .tero-location-maps .tero-map-consent,
  .tero-location-maps .tero-location-maps__map-card iframe {
    border-radius: 22px !important;
  }
  .tero-location-maps .tero-location-maps__map-card,
  .tero-location-maps .tero-location-maps__info-card {
    min-height: 320px !important;
  }
  .tero-location-maps .tero-location-maps__info-card {
    padding: 24px !important;
    border-width: 5px !important;
  }
}
.tero-location-maps {
  background: transparent !important;
}
.tero-location-maps > .inner {
  box-sizing: border-box !important;
  width: min(1160px, calc(100% - 48px)) !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.tero-location-maps .tero-location-maps__item {
  width: 100% !important;
}
.tero-location-maps .tero-location-maps__map-card {
  position: relative !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: clamp(420px, 42vw, 520px) !important;
  min-height: 420px !important;
  overflow: hidden !important;
  border: 1px solid color-mix(in srgb, var(--tero-ci-red) 45%, transparent) !important;
  border-radius: 26px !important;
  background: #f1f2f4 !important;
  box-shadow: 0 18px 44px rgba(27, 31, 38, .12) !important;
}
.tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap],
.tero-location-maps .tero-map-consent {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 25px !important;
  overflow: hidden !important;
  background: #f1f2f4 !important;
  box-shadow: none !important;
}
.tero-location-maps .tero-location-maps__map-card iframe,
.tero-location-maps .tero-location-maps__map-card [class*=map_image_wrap] iframe,
.tero-location-maps .tero-map-consent iframe {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 25px !important;
}
.tero-location-maps .tero-location-maps__below {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin-top: clamp(22px, 3vw, 32px) !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.tero-location-maps .tero-location-maps__text {
  max-width: 760px !important;
  margin: 0 !important;
  color: #17243a !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
}
.tero-location-maps .tero-location-maps__text > :first-child {
  margin-top: 0 !important;
}
.tero-location-maps .tero-location-maps__text > :last-child {
  margin-bottom: 0 !important;
}
.tero-location-maps .tero-location-maps__route {
  margin-top: 1.5rem !important;
  margin-bottom: 0 !important;
}
.tero-location-maps .tero-location-maps__route-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}
.tero-location-maps .tero-location-maps__row,
.tero-location-maps .tero-location-maps__map-col,
.tero-location-maps .tero-location-maps__text-col,
.tero-location-maps .tero-location-maps__info-card {
  display: initial !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
@media (max-width: 720px) {
  .tero-location-maps > .inner {
    width: min(1160px, calc(100% - 28px)) !important;
  }
  .tero-location-maps .tero-location-maps__map-card {
    height: 340px !important;
    min-height: 340px !important;
    border-radius: 22px !important;
  }
  .tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap],
  .tero-location-maps .tero-map-consent,
  .tero-location-maps .tero-location-maps__map-card iframe {
    border-radius: 21px !important;
  }
  .tero-location-maps .tero-location-maps__text {
    max-width: none !important;
    font-size: 17px !important;
  }
}
.tero-location-maps .tero-location-maps__map-card .map-placeholder.tero-map-consent,
.tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap] > .map-placeholder.tero-map-consent {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 100% !important;
  max-height: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 25px !important;
  overflow: hidden !important;
  background: #f1f2f4 !important;
  box-shadow: none !important;
}
.tero-location-maps .tero-location-maps__map-card .tero-map-consent__content {
  position: relative !important;
  z-index: 2 !important;
  box-sizing: border-box !important;
  width: min(420px, calc(100% - 48px)) !important;
  max-width: 420px !important;
  margin: auto !important;
  text-align: center !important;
}
.tero-location-maps .tero-location-maps__map-card .map-placeholder.tero-map-consent iframe,
.tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap] iframe {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  max-height: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 25px !important;
}
div.tero-location-maps.frame > div.inner {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
div.tero-location-maps.frame > div.inner > .tero-location-maps__item,
div.tero-location-maps.frame > div.inner .tero-location-maps__map-card,
div.tero-location-maps.frame > div.inner .tero-location-maps__below {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
#c515.tero-location-maps,
#c516.tero-location-maps,
#c517.tero-location-maps {
  margin-top: 34px !important;
  padding-top: 0 !important;
}
#c233.tero-location-detail,
#c234.tero-location-detail,
#c235.tero-location-detail {
  padding-bottom: 17px !important;
  margin-bottom: 0 !important;
}
#c515.tero-location-maps,
#c516.tero-location-maps,
#c517.tero-location-maps {
  margin-top: 0 !important;
  padding-top: 17px !important;
}

/* Resources/Public/Css/content-elements/sticky-contact.css */
.tero-sticky-contact {
  position: fixed;
  top: 50%;
  right: 0;
  z-index: 110;
  width: 76px;
  transform: translateY(-50%);
  overflow: hidden;
  background: #fff;
  border: 1px solid #d9dce1;
  border-right: 0;
  border-radius: 16px 0 0 16px;
  box-shadow: var(--tero-shadow);
  font-family: var(--font-head);
  transition: width .28s ease, box-shadow .28s ease;
}
.tero-sticky-contact.is-open,
.tero-sticky-contact:hover,
.tero-sticky-contact:focus-within {
  width: 330px;
  border-color: var(--tero-ci-red);
}
.tero-sticky-contact__toggle {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  min-height: 86px;
  padding: 14px 0 14px 14px;
  border: 0;
  background: #fff;
  transition: padding-left .28s ease;
  cursor: pointer;
}
.tero-sticky-contact__logo {
  display: block;
  width: 48px;
  height: auto;
  max-height: 58px;
  object-fit: contain;
  transition: width .22s ease;
}
.tero-sticky-contact.is-open .tero-sticky-contact__toggle,
.tero-sticky-contact:hover .tero-sticky-contact__toggle,
.tero-sticky-contact:focus-within .tero-sticky-contact__toggle {
  padding-left: 80px;
}
.tero-sticky-contact.is-open .tero-sticky-contact__logo,
.tero-sticky-contact:hover .tero-sticky-contact__logo,
.tero-sticky-contact:focus-within .tero-sticky-contact__logo {
  width: 125px;
  max-height: 72px;
}
.tero-sticky-contact__logo-fallback {
  display: block;
  color: var(--tero-ci-red);
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .04em;
}
.tero-sticky-contact__list {
  list-style: none;
  margin: 0;
  padding: 0;
  background: #fff;
}
.tero-sticky-contact__item {
  margin: 0;
  padding: 0;
}
.tero-sticky-contact__link {
  display: flex;
  align-items: center;
  width: 330px;
  min-height: 62px;
  color: var(--tero-heading);
  text-decoration: none;
  background: #fff;
}
.tero-sticky-contact__icon {
  display: flex;
  flex: 0 0 76px;
  align-items: center;
  justify-content: center;
  width: 76px;
  height: 62px;
}
.tero-sticky-contact__icon img {
  display: block;
  width: auto;
  height: auto;
  max-width: 28px;
  max-height: 28px;
}
.tero-sticky-contact__label {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  padding: 0 22px 0 4px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  opacity: 0;
  visibility: hidden;
  transform: translateX(8px);
  transition:
    opacity .2s ease,
    transform .28s ease,
    visibility 0s linear .2s;
}
.tero-sticky-contact.is-open .tero-sticky-contact__label,
.tero-sticky-contact:hover .tero-sticky-contact__label,
.tero-sticky-contact:focus-within .tero-sticky-contact__label {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
  transition-delay: 0s;
}
.tero-sticky-contact__link:hover {
  color: var(--tero-ci-red);
  background: color-mix(in srgb, var(--tero-ci-red) 4%, transparent);
}
.tero-sticky-contact__toggle:focus-visible,
.tero-sticky-contact__link:focus-visible {
  position: relative;
  z-index: 2;
  outline: 3px solid var(--tero-ci-red);
  outline-offset: -3px;
}
@media (prefers-reduced-motion: reduce) {
  .tero-sticky-contact,
  .tero-sticky-contact__logo,
  .tero-sticky-contact__label {
    transition: none;
  }
}
body[data-accessibility-dark=true] .tero-sticky-contact,
body[data-accessibility-dark=true] .tero-sticky-contact__toggle,
body[data-accessibility-dark=true] .tero-sticky-contact__list,
body[data-accessibility-dark=true] .tero-sticky-contact__link {
  background: var(--tero-dark-surface, #1b1f26);
  color: var(--tero-dark-text, #f4f5f7);
}
body[data-accessibility-dark=true] .tero-sticky-contact {
  border-color: var(--tero-dark-border, #3a404a);
  box-shadow: 0 12px 28px rgba(0, 0, 0, .34);
}
body[data-accessibility-dark=true] .tero-sticky-contact:is(.is-open, :hover, :focus-within) {
  border-color: var(--tero-ci-red);
}
body[data-accessibility-dark=true] .tero-sticky-contact__link {
  color: var(--tero-dark-text, #f4f5f7);
}
body[data-accessibility-dark=true] .tero-sticky-contact__label {
  color: var(--tero-dark-text, #f4f5f7);
}
body[data-accessibility-dark=true] .tero-sticky-contact__link:hover,
body[data-accessibility-dark=true] .tero-sticky-contact__link:focus-visible {
  color: var(--tero-ci-red-faded);
  background: color-mix(in srgb, var(--tero-ci-red) 14%, transparent);
}
@media (max-width: 1100px) {
  .tero-sticky-contact {
    width: 44px;
  }
  .tero-sticky-contact__toggle {
    min-height: 54px;
    padding: 5px;
  }
  .tero-sticky-contact__logo {
    width: 34px;
    max-height: 42px;
  }
  .tero-sticky-contact__icon {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
  }
  .tero-sticky-contact__icon img {
    max-width: 22px;
    max-height: 22px;
  }
  .tero-sticky-contact__link {
    width: min(280px, calc(100vw - 20px));
    min-height: 44px;
  }
  .tero-sticky-contact.is-open,
  .tero-sticky-contact:focus-within {
    width: min(280px, calc(100vw - 20px));
    overflow-y: auto;
  }
}
@media (max-width: 1100px) and (min-width: 768px) {
  .tero-sticky-contact {
    top: 50%;
    right: 0;
    bottom: auto;
    max-height: none;
    overflow: hidden;
    transform: translateY(-50%);
  }
  .tero-sticky-contact.is-open,
  .tero-sticky-contact:focus-within {
    max-height: calc(100dvh - 24px);
  }
  .tero-sticky-contact:hover:not(.is-open):not(:focus-within) {
    width: 44px;
  }
  body.tero-accessibility-sticky-open .tero-sticky-contact:not(.is-open):not(:focus-within) {
    top: auto;
    right: 320px;
    bottom: 14px;
    max-height: 54px;
    transform: none;
  }
}
@media (max-width: 767px) {
  .tero-sticky-contact {
    top: auto;
    right: 10px;
    bottom: 10px;
    width: 44px;
    max-height: 54px;
    overflow: hidden;
    transform: none;
    border-radius: 10px;
  }
  .tero-sticky-contact.is-open,
  .tero-sticky-contact:focus-within {
    width: min(280px, calc(100vw - 20px));
    max-height: calc(100dvh - 74px);
    overflow-y: auto;
  }
  .tero-sticky-contact:hover:not(.is-open):not(:focus-within) {
    width: 44px;
    max-height: 54px;
  }
}

/* Resources/Public/Css/content-elements/sticky-accessibility.css */
.tero-accessibility-sticky {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 111;
  width: 58px;
  max-height: 58px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #d9dce1;
  border-radius: 10px;
  box-shadow: var(--tero-shadow, 5px 5px 20px rgba(0, 0, 0, .1));
  color: var(--tero-heading, #24262b);
  font-family: var(--font-head, "Roboto Condensed", Verdana, Arial, sans-serif);
  transition:
    width .46s cubic-bezier(.22, 1, .36, 1) .06s,
    max-height .46s cubic-bezier(.22, 1, .36, 1) .06s,
    border-color .22s ease,
    box-shadow .22s ease;
}
.tero-accessibility-sticky:is(.is-open, :hover, :focus-within) {
  width: min(340px, calc(100vw - 36px));
  max-height: min(430px, calc(100vh - 36px));
  border-color: var(--tero-ci-red);
  transition:
    width .46s cubic-bezier(.22, 1, .36, 1),
    max-height .46s cubic-bezier(.22, 1, .36, 1),
    border-color .22s ease,
    box-shadow .22s ease;
}
.tero-accessibility-sticky__trigger {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 58px;
  padding: 0;
  border: 0;
  background: #fff;
  cursor: pointer;
}
.tero-accessibility-sticky__trigger-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 36px;
  height: 36px;
  object-fit: contain;
  transform: translate(-50%, -50%);
}
.tero-accessibility-sticky__trigger-fallback,
.tero-accessibility-sticky__icon,
.tero-accessibility-sticky__reset-icon {
  display: block;
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  background: #b81834;
}
.tero-accessibility-sticky__trigger-fallback {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 36px;
  height: 36px;
  transform: translate(-50%, -50%);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='4' r='2'/%3E%3Cpath d='M5 7h14v2h-5v4.2l4 7.8h-2.7L12 15l-3.3 6H6l4-7.8V9H5V7Z'/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='4' r='2'/%3E%3Cpath d='M5 7h14v2h-5v4.2l4 7.8h-2.7L12 15l-3.3 6H6l4-7.8V9H5V7Z'/%3E%3C/svg%3E") no-repeat center / contain;
}
.tero-accessibility-sticky__panel {
  width: 340px;
  max-width: calc(100vw - 36px);
  padding: 0 18px 18px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition:
    opacity .14s ease,
    transform .14s ease,
    visibility 0s linear .14s;
}
.tero-accessibility-sticky:is(.is-open, :hover, :focus-within) .tero-accessibility-sticky__panel {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition:
    opacity .24s ease .18s,
    transform .30s cubic-bezier(.22, 1, .36, 1) .16s,
    visibility 0s linear;
}
.tero-accessibility-sticky__headline {
  margin: 0 0 12px;
  padding-left: 44px;
  color: var(--tero-heading, #24262b);
  font-family: inherit;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.25;
}
.tero-accessibility-sticky__option {
  position: relative;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 50px;
  align-items: center;
  gap: 10px;
  min-height: 50px;
  padding: 5px 0;
  cursor: pointer;
}
.tero-accessibility-sticky__label {
  font-size: 16px;
  line-height: 1.25;
}
.tero-accessibility-sticky__input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.tero-accessibility-sticky__switch {
  position: relative;
  width: 50px;
  height: 26px;
  border: 2px solid #d9dce1;
  border-radius: 999px;
  background: #d9dce1;
  transition: background-color .2s ease, border-color .2s ease;
}
.tero-accessibility-sticky__switch::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
  transition: transform .2s ease;
}
.tero-accessibility-sticky__input:checked + .tero-accessibility-sticky__switch {
  border-color: var(--tero-ci-red);
  background: var(--tero-ci-red);
}
.tero-accessibility-sticky__input:checked + .tero-accessibility-sticky__switch::before {
  transform: translateX(24px);
}
.tero-accessibility-sticky__input:focus-visible + .tero-accessibility-sticky__switch,
.tero-accessibility-sticky__trigger:focus-visible,
.tero-accessibility-sticky__reset:focus-visible {
  outline: 3px solid var(--tero-ci-red);
  outline-offset: 2px;
}
.tero-accessibility-sticky__option[data-accessibility-type=contrast] .tero-accessibility-sticky__icon {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20V2Zm0 3v14a7 7 0 0 1 0-14Z'/%3E%3C/svg%3E") no-repeat center / 24px;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20V2Zm0 3v14a7 7 0 0 1 0-14Z'/%3E%3C/svg%3E") no-repeat center / 24px;
}
.tero-accessibility-sticky__option[data-accessibility-type=grayscale] .tero-accessibility-sticky__icon {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='8' cy='12' r='6'/%3E%3Cpath d='M16 6a6 6 0 1 1 0 12 8 8 0 0 0 0-12Z' opacity='.45'/%3E%3C/svg%3E") no-repeat center / 24px;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='8' cy='12' r='6'/%3E%3Cpath d='M16 6a6 6 0 1 1 0 12 8 8 0 0 0 0-12Z' opacity='.45'/%3E%3C/svg%3E") no-repeat center / 24px;
}
.tero-accessibility-sticky__option[data-accessibility-type=underline] .tero-accessibility-sticky__icon {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 3h3v8a3 3 0 0 0 6 0V3h3v8a6 6 0 0 1-12 0V3ZM4 20h16v3H4z'/%3E%3C/svg%3E") no-repeat center / 24px;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 3h3v8a3 3 0 0 0 6 0V3h3v8a6 6 0 0 1-12 0V3ZM4 20h16v3H4z'/%3E%3C/svg%3E") no-repeat center / 24px;
}
.tero-accessibility-sticky__option[data-accessibility-type=dark] .tero-accessibility-sticky__icon {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.5 15.5A9 9 0 0 1 8.5 3.5a9 9 0 1 0 12 12Z'/%3E%3C/svg%3E") no-repeat center / 24px;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.5 15.5A9 9 0 0 1 8.5 3.5a9 9 0 1 0 12 12Z'/%3E%3C/svg%3E") no-repeat center / 24px;
}
.tero-accessibility-sticky__reset.button {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: fit-content;
  min-width: 140px;
  min-height: 50px;
  margin: 18px auto 0;
  padding: 13px 20px;
  overflow: hidden;
  border: 0;
  border-radius: 8px;
  background-image: var(--tero-button-gradient);
  background-position: left center;
  background-size: 200% auto;
  box-shadow: 0 12px 26px color-mix(in srgb, var(--tero-ci-red) 18%, transparent), 0 5px 14px rgba(0, 0, 0, .08);
  color: #fff;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.2;
  text-align: center;
  white-space: nowrap;
  transition:
    background-position .35s ease,
    box-shadow .2s ease,
    transform .12s ease,
    filter .2s ease;
}
.tero-accessibility-sticky__reset.button::after {
  content: none;
  display: none;
}
.tero-accessibility-sticky__reset.button:hover,
.tero-accessibility-sticky__reset.button:focus-visible {
  background: var(--tero-button-gradient) right center / 200% auto no-repeat;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--tero-ci-red) 20%, transparent), 0 8px 18px color-mix(in srgb, var(--tero-ci-red) 10%, transparent);
  filter: none;
  transform: translateY(-1px);
  color: #fff;
}
.tero-accessibility-sticky__reset.button:active {
  background: var(--tero-button-gradient) right center / 200% auto no-repeat;
  box-shadow: 0 10px 22px color-mix(in srgb, var(--tero-ci-red) 16%, transparent), 0 4px 12px color-mix(in srgb, var(--tero-ci-red) 8%, transparent);
  filter: none;
  transform: translateY(0);
}
body[data-accessibility-dark=true] .tero-accessibility-sticky,
body[data-accessibility-dark=true] .tero-accessibility-sticky__trigger {
  background: var(--tero-dark-surface, #1b1f26);
  color: var(--tero-dark-text, #f4f5f7);
}
body[data-accessibility-dark=true] .tero-accessibility-sticky__headline {
  color: var(--tero-dark-text, #f4f5f7);
}
@media (prefers-reduced-motion: reduce) {
  .tero-accessibility-sticky,
  .tero-accessibility-sticky__panel,
  .tero-accessibility-sticky__switch,
  .tero-accessibility-sticky__switch::before {
    transition: none;
  }
}
@media (max-width: 1100px) {
  .tero-accessibility-sticky {
    right: 10px;
    width: 44px;
    max-height: 44px;
  }
  .tero-accessibility-sticky__trigger {
    height: 44px;
  }
  .tero-accessibility-sticky__trigger-icon,
  .tero-accessibility-sticky__trigger-fallback {
    width: 28px;
    height: 28px;
  }
  .tero-accessibility-sticky:is(.is-open, :focus-within) {
    width: min(300px, calc(100vw - 20px));
  }
  .tero-accessibility-sticky__panel {
    width: min(300px, calc(100vw - 20px));
    max-width: calc(100vw - 20px);
    overflow-y: auto;
  }
}
@media (max-width: 1100px) and (min-width: 768px) {
  .tero-accessibility-sticky {
    bottom: 14px;
  }
  .tero-accessibility-sticky:is(.is-open, :focus-within) {
    max-height: calc(100dvh - 28px);
  }
  .tero-accessibility-sticky__panel {
    max-height: calc(100dvh - 84px);
  }
  .tero-accessibility-sticky:hover:not(.is-open):not(:focus-within) {
    width: 44px;
    max-height: 44px;
  }
}
@media (max-width: 767px) {
  .tero-accessibility-sticky {
    right: 10px;
    bottom: 64px;
    width: 44px;
    max-height: 44px;
  }
  .tero-accessibility-sticky:is(.is-open, :focus-within) {
    width: min(300px, calc(100vw - 20px));
    max-height: calc(100dvh - 74px);
  }
  .tero-accessibility-sticky__panel {
    width: min(300px, calc(100vw - 20px));
    max-height: calc(100dvh - 130px);
    overflow-y: auto;
  }
  .tero-accessibility-sticky:hover:not(.is-open):not(:focus-within) {
    width: 44px;
    max-height: 44px;
  }
  body.tero-sticky-contact-open .tero-accessibility-sticky:not(.is-open):not(:focus-within) {
    top: 10px;
    bottom: auto;
  }
}

/* Resources/Public/Css/layout/01-footer-legacy.css */
.foot .foot-top {
  background: var(--tero-grey);
}
.foot > * > .inner {
  padding-block: 40px;
}
.foot .row {
  display: grid;
}
.foot .foot-top .row {
  grid-template-columns: 2fr 1fr;
}
.foot .foot-top .row .col:first-child {
  font: 400 35px/1.4 var(--font-head);
  color: var(--tero-heading);
}
.foot .foot-top .handwritten {
  font-size: 60px;
  transform: translateY(20px);
}
.foot .foot-bottom {
  background: var(--tero-ci-red);
  color: #fff;
}
.foot .foot-bottom h1,
.foot .foot-bottom h2,
.foot .foot-bottom h3,
.foot .foot-bottom h4,
.foot .foot-bottom h5,
.foot .foot-bottom h6,
.foot .foot-bottom a {
  color: #fff;
}
.foot .foot-bottom .row:first-child .col:first-child a {
  font-weight: 700;
}
.foot .foot-bottom .row:first-child {
  grid-template-columns: minmax(0, 1fr) minmax(180px, auto) minmax(0, 1fr);
  column-gap: 24px;
  align-items: center;
}
.foot .footer-social {
  min-width: 0;
}
.foot .footer-social-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 14px 22px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.foot .footer-social-list li,
.foot .footer-social-list li + li {
  display: inline-flex;
  margin: 0;
}
.foot .foot-bottom .row:first-child .col:nth-child(2) {
  text-align: center;
}
.foot .foot-bottom .row:last-child {
  grid-template-columns: 1fr 1fr;
  border-top: 1px solid #fff;
  padding-top: 20px;
  margin-top: 30px;
  font-size: 16px;
}
.foot .row .col:last-child {
  text-align: right;
}
.foot ul li {
  display: inline-block;
}
.foot ul li + li {
  margin-left: 30px;
}
.foot .facebook,
.foot .xing,
.foot .instagram {
  display: block;
  width: 22px;
  height: 22px;
  margin: 0 auto;
  background: no-repeat center/contain;
  text-indent: 100%;
  overflow: hidden;
  color: transparent;
}
.foot .facebook {
  background-image: url("./assets/facebook-white-QIOIC7ZP.svg");
  width: 11px;
}
.foot .xing {
  background-image: url("./assets/xing-white-DYGPGNU7.svg");
  width: 19px;
}
.foot .instagram {
  background-image: url("./assets/instagram-white-DOGW7HNX.svg");
}
.backtotop {
  display: inline-block;
  width: 48px;
  height: 48px;
  margin-left: 30px;
  transform: rotate(-90deg);
  background: #fff url("./assets/arrow-right-red-DK46E5ZG.svg") no-repeat center/15px auto;
}
.backtotop span {
  display: none;
}
.tero-large-intro {
  position: relative !important;
  text-align: center !important;
  margin-top: 30px !important;
}
.tero-large-intro:before,
.tero-large-intro:after {
  content: "" !important;
  position: absolute !important;
  background: var(--tero-grey) !important;
  z-index: 0 !important;
}
.tero-large-intro:before {
  width: 70px !important;
  height: 70px !important;
  left: -100px !important;
  top: 35px !important;
}
.tero-large-intro:after {
  width: 40px !important;
  height: 40px !important;
  left: -30px !important;
  top: 105px !important;
}
.tero-large-intro > * {
  position: relative !important;
  z-index: 1 !important;
}
.tero-large-intro-claim {
  display: block !important;
  font-size: 34px !important;
  line-height: 1.3 !important;
  letter-spacing: 8px !important;
  text-transform: uppercase !important;
  margin: 40px auto 35px !important;
  max-width: 1100px !important;
  text-align: center !important;
  color: #333 !important;
  font-weight: 400 !important;
}
.tero-large-intro-text,
.tero-large-intro-text p,
.tero-large-intro-text a {
  color: var(--tero-ci-red) !important;
  font-weight: 700 !important;
  letter-spacing: 6px !important;
  text-transform: uppercase !important;
}
.tero-large-intro-text {
  text-align: left !important;
  max-width: 1050px !important;
  margin: 0 auto !important;
}
.tero-large-intro-text p {
  margin-bottom: 25px !important;
}
.faq .accordion_container {
  margin-bottom: 2rem !important;
}
.faq .accordion-more-button-wrap {
  width: 100%;
  display: block;
  text-align: center !important;
}
.faq .accordion-more-button-wrap .button {
  float: none !important;
  display: table !important;
  margin: 0 auto !important;
}
.frame-type-pxtero_contenttiles .content-tiles .tiles-bottom.col3 {
  max-width: 1056px;
  margin-inline: auto;
}
.frame-type-text .inner > p.roofline,
.frame-type-text p.roofline {
  color: var(--tero-ci-red);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.25;
  margin-top: 2.5rem;
  margin-bottom: 1rem;
  position: relative;
}
.head > .inner .logo {
  width: 150px !important;
  height: 79px !important;
  flex: 0 0 150px !important;
  background: none !important;
}
.head > .inner .logo a {
  position: relative !important;
  display: block !important;
  width: 150px !important;
  height: 79px !important;
}
.head > .inner .logo img.tero-header-logo-image {
  display: block !important;
  width: 150px !important;
  height: 79px !important;
  max-width: 150px !important;
  max-height: 79px !important;
  object-fit: contain !important;
}
.head > .inner .logo a span {
  display: none !important;
}
.foot .footer-social-link:before,
.foot .footer-social-link:after {
  content: none !important;
  display: none !important;
  background: none !important;
  mask: none !important;
  -webkit-mask: none !important;
}
.foot .footer-social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  overflow: hidden;
  font-size: 0 !important;
  line-height: 0 !important;
  text-decoration: none;
}
.foot .footer-social-link img,
.foot .footer-social-icon {
  display: inline-block;
  width: 22px !important;
  height: 22px !important;
  max-width: 22px !important;
  max-height: 22px !important;
  object-fit: contain;
  margin: 0;
  vertical-align: middle;
}
.tero-job-detail {
  max-width: 1120px;
  margin: 0 auto 4rem;
  padding: 0 1rem;
}
.tero-job-detail-hero-image {
  margin: 0 0 2rem;
  padding: 8px;
  overflow: hidden;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 22px 52px rgba(27, 31, 38, .18);
}
.tero-job-detail-hero-image img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 7;
  object-fit: cover;
  border-radius: 7px;
}
.tero-job-detail-hero {
  position: relative;
  margin-bottom: 1.75rem;
  padding: 2.6rem 2.75rem;
  overflow: hidden;
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, .18),
      rgba(255, 255, 255, 0) 36%),
    linear-gradient(
      135deg,
      var(--tero-ci-red) 0%,
      var(--tero-ci-red-element-faded) 48%,
      var(--tero-ci-red) 100%);
  border-radius: 10px;
  color: #fff;
  box-shadow: 0 18px 38px color-mix(in srgb, var(--tero-ci-red) 28%, transparent);
}
.tero-job-detail-hero h1,
.tero-job-detail-hero .roofline {
  color: inherit;
}
.tero-job-detail-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin: 0 0 1.75rem;
}
.tero-job-detail-meta > div,
.tero-job-detail-card {
  padding: 1.55rem;
  background: #fff;
  border: 1px solid rgba(62, 62, 62, .08);
  border-radius: 10px;
  box-shadow: 0 14px 32px rgba(27, 31, 38, .09);
}
.tero-job-detail-meta dt,
.tero-job-detail-section h2,
.tero-job-detail-contact h2 {
  color: var(--tero-ci-red);
  font-weight: 700;
}
.tero-job-detail-intro {
  font-size: 1.25rem;
  font-weight: 700;
}
.tero-job-detail-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: flex-start;
  gap: 1rem;
  margin-top: 1.5rem;
}
.tero-job-detail-actions > .button,
.tero-job-detail-chatbot-application,
.tero-job-detail-chatbot-application .button {
  width: 100%;
  box-sizing: border-box;
}
.tero-job-detail-actions .button {
  text-align: center;
  overflow: hidden;
  border-radius: 7px;
  background-image:
    linear-gradient(
      120deg,
      var(--tero-button-color-end) 0%,
      var(--tero-button-color-start) 36%,
      var(--tero-button-color-middle) 50%,
      var(--tero-button-color-start) 64%,
      var(--tero-button-color-end) 100%);
  background-size: 220% 100%;
  background-position: 0 50%;
  box-shadow: 0 12px 24px color-mix(in srgb, var(--tero-ci-red) 24%, transparent);
  transition:
    background-position .35s ease,
    box-shadow .25s ease,
    transform .25s ease,
    color .25s ease;
}
.tero-job-detail-actions .button:hover,
.tero-job-detail-actions .button:focus-visible {
  background-color: var(--tero-button-color-start);
  background-position: 100% 50%;
  color: #fff;
  box-shadow: 0 16px 30px color-mix(in srgb, var(--tero-ci-red) 32%, transparent);
  transform: translateY(-1px);
}
.tero-job-detail-actions .button:active {
  transform: translateY(0);
  box-shadow: 0 8px 18px color-mix(in srgb, var(--tero-ci-red) 24%, transparent);
}
.tero-job-detail-backlink {
  padding: 12px 30px 12px 55px;
}
.tero-job-detail-backlink:after {
  content: none;
}
.tero-job-detail-backlink:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 30px;
  width: 16px;
  height: 10px;
  transform: translateY(-50%) scaleX(-1);
  background: url("./assets/arrow-right-white-NYTRSB3R.svg") no-repeat center/contain;
  transition: .3s ease;
}
.tero-job-detail-backlink:hover:before,
.tero-job-detail-backlink:focus-visible:before {
  transform: translate(-8px, -50%) scaleX(-1);
}
.tero-job-detail-chatbot-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
}
.tero-job-detail-chatbot-button:after {
  content: none;
}
.tero-job-detail-chatbot-icon {
  width: 1.2em;
  height: 1.2em;
  flex: 0 0 auto;
}
.tero-job-detail-chatbot-application p {
  max-width: 100%;
  margin: .5rem 0 0;
  font-size: 14px;
  line-height: 1.45;
  text-align: left;
}
.tero-job-detail-message {
  padding: 1.25rem;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 14px 32px rgba(27, 31, 38, .09);
  font-weight: 700;
}
@media (max-width: 780px) {
  .tero-job-detail-actions {
    grid-template-columns: 1fr;
  }
}
.tero-job-detail-badges {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin: 0 0 1rem;
}
.tero-job-detail-badges span {
  display: inline-block;
  background: var(--tero-grey);
  color: var(--tero-ci-red);
  padding: .35rem .6rem;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
}
.tero-job-offers {
  max-width: 1200px;
  margin: 0 auto;
  padding: 3rem 1rem 4rem;
}
.tero-job-offers > h1 {
  text-align: center;
  margin-bottom: 1.75rem;
}
.tero-job-offers-consent {
  max-width: 670px;
  margin: 0 auto 2rem;
  padding: 3.25rem 3rem;
  background: #fff;
  text-align: center;
  box-shadow: 0 12px 35px rgba(0, 0, 0, .08);
}
.tero-job-offers-iframe {
  width: 100%;
  border: 0;
  display: block;
}

/* Resources/Public/Css/layout/02-responsive-legacy.css */
@media (max-width: 1450px) {
  .head .nav > li + li {
    margin-left: 30px;
  }
  .head .nav a {
    font-size: 18px;
  }
  .content-tiles .tiles-bottom.col4 {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 1200px) {
  h1,
  .like-h1 {
    font-size: 40px;
  }
  h2,
  .like-h2 {
    font-size: 32px;
  }
  h3,
  .like-h3 {
    font-size: 28px;
  }
  h4,
  .like-h4 {
    font-size: 24px;
  }
  .banner .text {
    position: static;
    transform: none;
    background: var(--tero-grey);
    padding: 5%;
    max-width: none;
    width: auto;
  }
  .banner.isolated {
    height: auto;
    flex-direction: column;
    align-items: center;
  }
  .banner.isolated .image {
    max-width: 100%;
    align-self: flex-end;
  }
  .tiles .tiles-bottom.col3 .tile {
    padding: 30px;
  }
  .content-tiles .tiles-bottom {
    gap: 20px;
  }
  .content-tiles .tiles-bottom.col3,
  .content-tiles .tiles-bottom.col4 {
    grid-template-columns: repeat(2, 1fr);
  }
  .foot .foot-top .row {
    grid-template-columns: 1fr;
  }
  .foot .foot-top .row .col:first-child {
    font-size: 20px;
    text-align: center;
  }
  .foot .foot-top .row .col:last-child {
    margin-top: 20px;
    text-align: center;
  }
  .open_nav {
    display: inherit;
  }
  .head > .inner nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    max-height: calc(100vh - 84px);
    overflow: auto;
  }
  .head > .inner nav .nav {
    flex-direction: column;
  }
  .head > .inner nav .nav li {
    width: 100%;
  }
  .head > .inner nav .nav li + li {
    margin-left: 0;
  }
  .head .nav > li > a > span::after {
    content: none;
  }
  .head > .inner nav .nav li:hover > a,
  .head > .inner nav .nav li.active > a,
  .head > .inner nav .nav li.act > a {
    background: var(--tero-ci-red);
    color: #fff;
  }
  .head > .inner nav .nav li .subnav {
    position: inherit;
    box-shadow: none;
  }
  .showSub {
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 67px;
    height: 67px;
    line-height: 67px;
    text-align: center;
    z-index: 10;
  }
}
@media (max-width: 1024px) {
  .tero-downloads__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .redboxcta .inner {
    flex-direction: column;
    text-align: center;
  }
  .redboxcta .inner .graphic {
    position: relative;
    right: auto;
    bottom: auto;
    margin: 30px auto;
  }
  .tiles .tiles-bottom.col3 .tile {
    width: calc(50% - 20px);
  }
  .tiles .tiles-bottom.col3 .tile:nth-child(3n) {
    margin-right: 40px;
  }
  .tiles .tiles-bottom.col3 .tile:nth-child(2n) {
    margin-right: 0;
  }
  .tiles .tiles-bottom.col5 .tile {
    width: calc(33.333% - 13.333px);
  }
  .tiles .tiles-bottom.col5 .tile:nth-child(5n) {
    margin-right: 20px;
  }
  .tiles .tiles-bottom.col5 .tile:nth-child(3n) {
    margin-right: 0;
  }
}
@media (max-width: 960px) {
  .textpicture_wrap,
  .textpicture.imageposition-right .textpicture_wrap {
    flex-direction: column;
  }
  .textpicture_image,
  .textpicture_text {
    width: 100%;
  }
  .textpicture_image {
    max-width: 90%;
    margin-bottom: 20px;
  }
  .grid2cols > .col,
  .grid3cols > .col,
  .grid4cols > .col,
  .grid5cols > .col {
    width: 100%;
  }
  .gridrow .col + .col {
    margin-left: 0;
    margin-top: 20px;
  }
}
@media (max-width: 768px) {
  .tero-downloads__grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .tero-downloads__preview,
  .tero-downloads__placeholder {
    height: 192px;
    min-height: 192px;
  }
  .tero-downloads__preview img {
    max-height: 150px;
  }
  .frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__content {
    flex-direction: column;
    align-items: stretch;
  }
  .frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__media,
  .frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__body {
    flex-basis: auto;
    max-width: none;
    width: 100%;
  }
  .frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__media {
    order: 1;
  }
  .frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__body {
    order: 2;
  }
  .frame-type-tero_flexible_hoverbar .tero-flexible-hoverbar__image figure {
    margin-inline: auto;
  }
  body {
    font-size: 17px;
  }
  .site .allcont .cont > div:first-child {
    margin-top: 50px;
  }
  .site .allcont .cont > div:last-child {
    margin-bottom: 50px;
  }
  .head {
    z-index: 999;
  }
  .head > .inner {
    padding: 20px 0;
  }
  .head > .inner .headnav {
    display: none;
  }
  h1,
  .like-h1 {
    font-size: 30px;
  }
  h2,
  .like-h2 {
    font-size: 26px;
  }
  h3,
  .like-h3 {
    font-size: 24px;
  }
  h4,
  .like-h4 {
    font-size: 22px;
  }
  .roofline,
  p[class*=roofline] {
    font-size: 14px;
  }
  .roofline:before,
  p[class*=roofline]:before {
    width: 35px;
    height: 35px;
    transform: translate(65px, -45px);
  }
  .roofline:after,
  p[class*=roofline]:after {
    width: 20px;
    height: 20px;
    transform: translate(30px, -10px);
  }
  .banner .text {
    font-size: 22px;
  }
  .banner.isolated .buttons {
    flex-direction: column;
    align-items: center;
  }
  .banner.isolated .buttons .shadowbox + .shadowbox {
    margin-left: 0;
    margin-top: 20px;
  }
  .redboxcta.decor {
    margin-inline: 30px;
    padding-block: 50px;
  }
  .tiles .tiles-top {
    flex-direction: column;
    align-items: flex-start;
  }
  .tiles .tiles-top .tiles-top-right {
    margin-top: 20px;
  }
  .tiles .tiles-bottom.col3 .tile,
  .tiles .tiles-bottom.col5 .tile {
    width: 100%;
    margin-right: 0;
  }
  .tiles .tiles-bottom.col3 .tile:nth-child(3n),
  .tiles .tiles-bottom.col5 .tile:nth-child(3n) {
    margin-right: 0;
  }
  .content-tiles .tiles-bottom.col3,
  .content-tiles .tiles-bottom.col4 {
    grid-template-columns: 1fr;
  }
  .accordion_content .content-wrapper {
    column-count: 1;
  }
  .foot .foot-bottom .row:first-child,
  .foot .foot-bottom .row:last-child {
    display: block;
    text-align: center;
  }
  .foot .row .col:last-child {
    text-align: center;
  }
  .backtotop {
    margin: 20px auto auto;
  }
  .tero-job-detail-meta {
    grid-template-columns: 1fr;
  }
  .tero-job-detail-hero {
    padding: 1.5rem;
  }
}
@media (max-width: 500px) {
  .frame-greybox,
  .frame-ci_bg {
    padding: 30px;
  }
  .foot ul li {
    display: block;
  }
  .foot ul li + li {
    margin-left: 0;
    margin-top: 10px;
  }
  .sticky-buttons {
    top: auto;
    bottom: 20px;
    transform: none;
  }
  .sticky-buttons ul li {
    padding: 5px 10px;
    transform: translateX(calc(100% - 40px));
  }
  .tero-job-offers-consent {
    padding: 2rem 1.25rem;
  }
}
@media (max-width: 450px) {
  .handwritten {
    font-size: 30px;
  }
  .tero-ce.tero-bg-white,
  .tero-ce.tero-bg-light,
  .tero-ce.tero-bg-red,
  .tero-ce.tero-bg-dark {
    padding: 2rem;
  }
  .tero-ce.tero-bg-area-header-full,
  .tero-ce.tero-bg-area-header-box {
    padding: 0;
  }
  .tero-ce.tero-bg-area-header-full > .inner > :is(h1, h2, h3, h4, h5, h6, .ce-headline-left, .ce-headline-center, .ce-headline-right),
  .tero-ce.tero-bg-area-header-full > .inner > :is(.tiles-top, .timeline-top, .accordion_wrap),
  .tero-ce.tero-bg-area-header-full > .inner > .faq > :is(.faq_roofline, .faq_headline),
  .tero-ce.tero-bg-area-header-full > .inner > .textpicture > .textpicture_wrap :is(.textpicture_roofline, .textpicture_headline),
  .tero-ce.tero-bg-area-header-box > .inner > :is(h1, h2, h3, h4, h5, h6, .ce-headline-left, .ce-headline-center, .ce-headline-right),
  .tero-ce.tero-bg-area-header-box > .inner > :is(.tiles-top, .timeline-top, .accordion_wrap),
  .tero-ce.tero-bg-area-header-box > .inner > .faq > :is(.faq_roofline, .faq_headline),
  .tero-ce.tero-bg-area-header-box > .inner > .textpicture > .textpicture_wrap :is(.textpicture_roofline, .textpicture_headline) {
    padding: 1.5rem 2rem;
  }
  .redboxcta .inner .text {
    font-size: 22px;
  }
}
.sr-only {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
}
.tabtocontent {
  position: absolute !important;
  top: 20px;
  left: 20px;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap !important;
  transform: translateY(-50%);
  z-index: 9999;
}
.tabtocontent:focus,
.tabtocontent:focus-visible {
  width: auto !important;
  height: auto !important;
  padding: 12px 55px 12px 30px !important;
  overflow: visible !important;
  clip: auto;
  clip-path: none;
  transform: translateY(0);
  color: #fff !important;
}
#accessibility-wrap {
  position: relative;
  display: flex;
  align-items: flex-start;
  transform: translateX(calc(100% - 50px));
  max-height: 50px;
  max-width: 92%;
  overflow: visible;
  transition: all .5s ease-in-out;
  filter: drop-shadow(5px 5px 20px rgba(0, 0, 0, .1));
  z-index: 99;
  margin-bottom: 15px;
}
#accessibility-wrap #accessibility-inner {
  display: none;
  flex-direction: column;
  gap: 20px;
  padding: 20px;
  background: #fff;
  color: #5c5c5c;
  visibility: hidden;
  max-width: calc(100% - 50px);
  max-height: 85dvh;
  overflow: auto;
  opacity: 0;
  transition: all .5s ease-in-out;
}
#accessibility-wrap.open {
  transform: translateX(0);
  opacity: 1;
}
#accessibility-wrap.open #accessibility-inner {
  pointer-events: all;
  visibility: visible;
  opacity: 1;
  display: flex;
}
#accessibility-wrap #accessibility-toggle {
  position: relative;
  display: block;
  width: 50px;
  min-width: 50px;
  height: 50px;
  background: #fff;
  transition: all .5s ease-in-out;
  pointer-events: all;
  cursor: pointer;
}
#accessibility-wrap #accessibility-toggle span {
  display: none;
}
#accessibility-wrap #accessibility-toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 32px;
  height: 32px;
  background: #5c5c5c;
  transition: all .5s ease-in-out;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Ccircle cx=%2212%22 cy=%224%22 r=%222.5%22/%3E%3Cpath d=%22M3 7h18v3h-7v4l4 9h-3l-3-6-3 6H6l4-9v-4H3V7Z%22/%3E%3C/svg%3E") no-repeat center / 100% 100%;
  mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Ccircle cx=%2212%22 cy=%224%22 r=%222.5%22/%3E%3Cpath d=%22M3 7h18v3h-7v4l4 9h-3l-3-6-3 6H6l4-9v-4H3V7Z%22/%3E%3C/svg%3E") no-repeat center / 100% 100%;
}
#accessibility-wrap #accessibility-toggle:hover::after,
#accessibility-wrap #accessibility-toggle:focus-visible::after,
#accessibility-wrap.open #accessibility-toggle::after {
  background: var(--tero-ci-red);
}
.tero-job-offers {
  overflow-anchor: none;
}
.tero-job-offers-iframe {
  display: block;
  width: 100%;
  min-height: 2300px;
  border: 0;
  overflow-anchor: none;
}
.tero-job-offers-iframe[hidden] {
  display: none;
}
.tero-job-offers:not(.is-loaded) {
  min-height: 220px;
}
#accessibility-wrap #accessibility-inner {
  box-sizing: border-box !important;
  width: 234px !important;
  padding: 20px 22px 22px !important;
  background: #fff !important;
  color: #5c5c5c !important;
  font-family: var(--font-body, "Lato", Verdana, Arial, sans-serif) !important;
  font-size: 18px !important;
  line-height: 1.35 !important;
  box-shadow: 0 12px 34px rgba(27, 31, 38, .12) !important;
}
#accessibility-wrap.open #accessibility-inner {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
}
#accessibility-wrap #accessibility-inner .toggle-wrap::before,
#accessibility-wrap #accessibility-inner .toggle-wrap::after {
  content: none !important;
  display: none !important;
}
#accessibility-wrap #accessibility-inner .toggle-wrap {
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 14px !important;
  min-height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
  color: #5c5c5c !important;
}
#accessibility-wrap #accessibility-inner .toggle-wrap input[type=checkbox] {
  appearance: none !important;
  -webkit-appearance: none !important;
  box-sizing: border-box !important;
  position: relative !important;
  width: 34px !important;
  height: 22px !important;
  margin: 0 !important;
  border: 2px solid var(--tero-ci-red) !important;
  border-radius: 999px !important;
  background: #fff !important;
  cursor: pointer !important;
  outline: none !important;
}
#accessibility-wrap #accessibility-inner .toggle-wrap input[type=checkbox]::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 3px !important;
  width: 12px !important;
  height: 12px !important;
  border-radius: 50% !important;
  background: #b81834 !important;
  transform: translateY(-50%) scale(0) !important;
  transition: transform .16s ease, left .16s ease !important;
}
#accessibility-wrap #accessibility-inner .toggle-wrap input[type=checkbox]:checked::after {
  left: 17px !important;
  transform: translateY(-50%) scale(1) !important;
}
#accessibility-wrap #accessibility-inner .toggle-wrap input[type=checkbox]:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--tero-ci-red) 28%, transparent) !important;
  outline-offset: 3px !important;
}
#accessibility-wrap #accessibility-inner .labeltext {
  display: block !important;
  color: #5c5c5c !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
}
#accessibility-wrap #accessibility-reset {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 58px !important;
  margin: 10px 0 0 !important;
  padding: 12px 16px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--tero-button-color-start) !important;
  color: #fff !important;
  font-family: var(--font-body, "Lato", Verdana, Arial, sans-serif) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  text-align: left !important;
  cursor: pointer !important;
  box-shadow: none !important;
}
#accessibility-wrap #accessibility-reset::before {
  content: "" !important;
  width: 24px !important;
  height: 24px !important;
  flex: 0 0 24px !important;
  background: currentColor !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 5a7 7 0 1 1-6.32 4H3l4-4 4 4H8.1A5 5 0 1 0 12 7V5Z'/%3E%3C/svg%3E") no-repeat center / contain !important;
  mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 5a7 7 0 1 1-6.32 4H3l4-4 4 4H8.1A5 5 0 1 0 12 7V5Z'/%3E%3C/svg%3E") no-repeat center / contain !important;
}
#accessibility-wrap #accessibility-reset::after {
  content: "\2192" !important;
  margin-left: auto !important;
  font-size: 22px !important;
  line-height: 1 !important;
}
#accessibility-wrap #accessibility-reset:hover,
#accessibility-wrap #accessibility-reset:focus-visible {
  background: var(--tero-button-color-end) !important;
  color: #fff !important;
  outline: 3px solid color-mix(in srgb, var(--tero-ci-red) 28%, transparent) !important;
  outline-offset: 3px !important;
}
body[data-accessibility-grayscale=true] #subhead,
body[data-accessibility-grayscale=true] .allcont,
body[data-accessibility-grayscale=true] .foot {
  filter: grayscale(1) !important;
}
body[data-accessibility-contrast=true] .head *:not(svg):not(path):not(img):not(video):not(iframe),
body[data-accessibility-contrast=true] #subhead *:not(svg):not(path):not(img):not(video):not(iframe),
body[data-accessibility-contrast=true] .allcont *:not(svg):not(path):not(img):not(video):not(iframe),
body[data-accessibility-contrast=true] .foot *:not(svg):not(path):not(img):not(video):not(iframe) {
  font-weight: 700 !important;
}
body[data-accessibility-contrast=true] .head .handwritten,
body[data-accessibility-contrast=true] #subhead .handwritten,
body[data-accessibility-contrast=true] .allcont .handwritten,
body[data-accessibility-contrast=true] .foot .handwritten {
  font-family: var(--font-head, "Roboto Condensed", Verdana, Arial, sans-serif) !important;
  font-weight: 700 !important;
  letter-spacing: normal !important;
}
body[data-accessibility-underline=true] .head a,
body[data-accessibility-underline=true] #subhead a,
body[data-accessibility-underline=true] .allcont a,
body[data-accessibility-underline=true] .foot a,
body[data-accessibility-underline=true] .head a *,
body[data-accessibility-underline=true] #subhead a *,
body[data-accessibility-underline=true] .allcont a *,
body[data-accessibility-underline=true] .foot a * {
  text-decoration: underline !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: .18em !important;
}
body[data-accessibility-contrast=true] .sticky-buttons,
body[data-accessibility-grayscale=true] .sticky-buttons,
body[data-accessibility-underline=true] .sticky-buttons {
  filter: none !important;
  position: fixed !important;
}
body[data-accessibility-grayscale=true] :is(#subhead, .allcont) {
  filter: grayscale(100%) !important;
}
body[data-accessibility-contrast=true] .sticky-buttons,
body[data-accessibility-contrast=true] .sticky-buttons *,
body[data-accessibility-underline=true] .sticky-buttons,
body[data-accessibility-underline=true] .sticky-buttons * {
  font-weight: 400 !important;
  text-decoration: none !important;
}
body[data-accessibility-contrast=true] :is(.head, #subhead, .allcont, .foot, dialog, .tero-newsletter-popup),
body[data-accessibility-contrast=true] :is(.head, #subhead, .allcont, .foot, dialog, .tero-newsletter-popup) * {
  font-weight: 700 !important;
}
body[data-accessibility-contrast=true] :is(.head, #subhead, .allcont, .foot, dialog, .tero-newsletter-popup) .handwritten {
  font-family: var(--font-head, "Roboto Condensed", Verdana, Arial, sans-serif) !important;
  letter-spacing: normal !important;
}
body[data-accessibility-underline=true] :is(.head, #subhead, .allcont, .foot, .tero-newsletter-popup) a,
body[data-accessibility-underline=true] :is(.head, #subhead, .allcont, .foot, .tero-newsletter-popup) a * {
  text-decoration: underline !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: .18em !important;
}
body[data-accessibility-contrast=true] #accessibility-wrap,
body[data-accessibility-grayscale=true] #accessibility-wrap,
body[data-accessibility-underline=true] #accessibility-wrap {
  position: relative !important;
  filter: none !important;
}
body[data-accessibility-contrast=true] .sticky-buttons,
body[data-accessibility-grayscale=true] .sticky-buttons,
body[data-accessibility-underline=true] .sticky-buttons {
  position: fixed !important;
  right: 0 !important;
  filter: none !important;
}
#accessibility-wrap #accessibility-inner {
  width: min(340px, calc(100vw - 50px)) !important;
}
#accessibility-wrap #accessibility-inner .toggle-wrap {
  position: relative !important;
  display: flex !important;
  grid-template-columns: none !important;
  align-items: center !important;
  gap: 5px !important;
  min-height: 32px !important;
  padding: 0 60px 0 0 !important;
}
#accessibility-wrap #accessibility-inner .toggle-wrap input[type=checkbox] {
  appearance: none !important;
  -webkit-appearance: none !important;
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
#accessibility-wrap #accessibility-inner .toggle-wrap input[type=checkbox]::after {
  content: none !important;
}
#accessibility-wrap #accessibility-inner .toggle-wrap::before {
  content: "" !important;
  display: block !important;
  flex: 0 0 32px !important;
  width: 32px !important;
  height: 32px !important;
  background: #b81834 !important;
}
#accessibility-wrap #accessibility-inner .toggle-wrap[for=accessibility-contrast-toggle]::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M12 2a10 10 0 1 0 0 20V2Zm0 3v14a7 7 0 0 1 0-14Z%22/%3E%3C/svg%3E") no-repeat center / 25px 25px !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M12 2a10 10 0 1 0 0 20V2Zm0 3v14a7 7 0 0 1 0-14Z%22/%3E%3C/svg%3E") no-repeat center / 25px 25px !important;
}
#accessibility-wrap #accessibility-inner .toggle-wrap[for=accessibility-grayscale-toggle]::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Ccircle cx=%228%22 cy=%2212%22 r=%226%22/%3E%3Cpath d=%22M16 6a6 6 0 1 1 0 12 8 8 0 0 0 0-12Z%22 opacity=%22.45%22/%3E%3C/svg%3E") no-repeat center / 25px 25px !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Ccircle cx=%228%22 cy=%2212%22 r=%226%22/%3E%3Cpath d=%22M16 6a6 6 0 1 1 0 12 8 8 0 0 0 0-12Z%22 opacity=%22.45%22/%3E%3C/svg%3E") no-repeat center / 25px 25px !important;
}
#accessibility-wrap #accessibility-inner .toggle-wrap[for=accessibility-underline-toggle]::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M6 3h3v8a3 3 0 0 0 6 0V3h3v8a6 6 0 0 1-12 0V3ZM4 20h16v3H4z%22/%3E%3C/svg%3E") no-repeat center / 25px 25px !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M6 3h3v8a3 3 0 0 0 6 0V3h3v8a6 6 0 0 1-12 0V3ZM4 20h16v3H4z%22/%3E%3C/svg%3E") no-repeat center / 25px 25px !important;
}
#accessibility-wrap #accessibility-inner .checktoggle {
  position: absolute !important;
  display: block !important;
  top: 50% !important;
  right: 0 !important;
  width: 50px !important;
  height: 25px !important;
  border: 2px solid var(--tero-grey, #f1f2f4) !important;
  border-radius: 999px !important;
  background: var(--tero-grey, #f1f2f4) !important;
  transform: translateY(-50%) !important;
  transition: background-color .25s ease, border-color .25s ease !important;
}
#accessibility-wrap #accessibility-inner .checktoggle::before {
  content: "" !important;
  position: absolute !important;
  display: block !important;
  top: 2px !important;
  left: 2px !important;
  width: 17px !important;
  height: 17px !important;
  border-radius: 50% !important;
  background: #fff !important;
  box-shadow: var(--tero-shadow, 5px 5px 20px rgba(0, 0, 0, .1)) !important;
  transform: translateX(0) !important;
  transition: transform .25s ease !important;
}
#accessibility-wrap #accessibility-inner input:checked + .checktoggle {
  border-color: var(--tero-ci-red) !important;
  background: var(--tero-ci-red) !important;
}
#accessibility-wrap #accessibility-inner input:checked + .checktoggle::before {
  transform: translateX(25px) !important;
}
#accessibility-wrap #accessibility-inner input:focus-visible + .checktoggle {
  outline: 2px solid var(--tero-ci-red) !important;
  outline-offset: 2px !important;
}
#accessibility-wrap #accessibility-reset::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M12 5a7 7 0 1 1-6.32 4H3l4-4 4 4H8.1A5 5 0 1 0 12 7V5Z%22/%3E%3C/svg%3E") no-repeat center / contain !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M12 5a7 7 0 1 1-6.32 4H3l4-4 4 4H8.1A5 5 0 1 0 12 7V5Z%22/%3E%3C/svg%3E") no-repeat center / contain !important;
}
body[data-accessibility-contrast=true] .sticky-buttons a,
body[data-accessibility-contrast=true] .sticky-buttons a *,
body[data-accessibility-underline=true] .sticky-buttons a,
body[data-accessibility-underline=true] .sticky-buttons a * {
  font-weight: 400 !important;
  text-decoration: none !important;
}
#accessibility-wrap #accessibility-toggle {
  flex: 0 0 50px;
  width: 50px;
  min-width: 50px;
  height: 50px;
  background: #fff !important;
  box-shadow: var(--tero-shadow, 5px 5px 20px rgba(0, 0, 0, .1));
}
#accessibility-wrap #accessibility-toggle::after {
  background: #b81834 !important;
}
#accessibility-wrap #accessibility-inner .toggle-wrap[for=accessibility-dark-toggle]::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M20.5 15.5A9 9 0 0 1 8.5 3.5 9 9 0 1 0 20.5 15.5Z%22/%3E%3C/svg%3E") no-repeat center / 25px 25px !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M20.5 15.5A9 9 0 0 1 8.5 3.5 9 9 0 1 0 20.5 15.5Z%22/%3E%3C/svg%3E") no-repeat center / 25px 25px !important;
}
body[data-accessibility-dark=true] {
  --tero-dark-bg: #111317;
  --tero-dark-surface: #1b1f26;
  --tero-dark-surface-2: #242a33;
  --tero-dark-border: rgba(255, 255, 255, .14);
  --tero-dark-text: #f4f5f7;
  --tero-dark-muted: #c8cdd4;
  --tero-dark-muted-2: #9fa6b2;
  --tero-grey: #242a33;
  --tero-grey-border: rgba(255, 255, 255, .14);
  --tero-text: #f4f5f7;
  --tero-heading: #fff;
  --tero-white: #1b1f26;
  --tero-shadow: 5px 5px 20px rgba(0, 0, 0, .42);
  color: var(--tero-dark-text);
  background: var(--tero-dark-bg);
  color-scheme: dark;
}
body[data-accessibility-dark=true] :is(.site, .main, .head, #subhead, .allcont, .cont, .content-wrap, .foot, .foot-bottom, dialog, .tero-newsletter-popup) {
  color: var(--tero-dark-text);
  background-color: var(--tero-dark-bg);
}
body[data-accessibility-dark=true] :is(.head, #subhead, .allcont, .foot, dialog, .tero-newsletter-popup) :is(h1, h2, h3, h4, h5, h6, p, li, label, legend, blockquote, figcaption, dt, dd, .headline) {
  color: var(--tero-dark-text);
}
body[data-accessibility-dark=true] :is(.tile, .shadowbox, .accordion_trigger, .accordion_content, .frame-greybox, .greyboxpowermail, .tero-info-tile, .tero-info-tiles-3-new__item, .tero-text-info-card, .tero-job-card, .tero-supplementary-services__card, .tero-interactive-service-cards__card, .tero-faq-topic-buttons__button, .tero-social-media-wall__card, .tero-downloads__item, .tero-jobfinder-filterbox, .tero-jobfinder-results__top, .tero-jobfinder-results__scroll, .tero-jobfinder-card, .tero-career-jobs__bottom-text, .tero-career-jobs__empty, .tero-career-jobs__training-list li, .tero-location-card, .tero-location-detail__contact-card, .tero-location-team-card, .tero-location-maps__info-card, .tero-form-embed-form, .tero-job-application-form, .tero-job-application-dropzone, .tero-form-collapse.is-open, .tero-form-collapse__trigger, .tero-form-collapse__panel, .tero-thankyou__box, .tero-newsletter-intro > .inner, .tero-newsletter-chooser-card, .tero-cleverreach-form .formbox, .tero-newsletter-popup__box) {
  color: var(--tero-dark-text) !important;
  background-color: var(--tero-dark-surface) !important;
  background-image: none !important;
  border-color: var(--tero-dark-border) !important;
}
body[data-accessibility-dark=true] :is(.tile, .shadowbox, .accordion_trigger, .accordion_content, .frame-greybox, .tero-info-tile, .tero-info-tiles-3-new__item, .tero-text-info-card, .tero-job-card, .tero-supplementary-services__card, .tero-interactive-service-cards__card, .tero-faq-topic-buttons__button, .tero-social-media-wall__card, .tero-downloads__item, .tero-jobfinder-card, .tero-career-jobs__bottom-text, .tero-career-jobs__empty, .tero-career-jobs__training-list li, .tero-location-card, .tero-location-detail__contact-card, .tero-location-team-card, .tero-location-maps__info-card, .tero-form-embed-form, .tero-job-application-form, .tero-thankyou__box, .tero-newsletter-intro > .inner, .tero-newsletter-chooser-card, .tero-cleverreach-form .formbox, .tero-newsletter-popup__box) :is(h1, h2, h3, h4, h5, h6, p, li, label, legend, dt, dd, span:not(.button):not(.checktoggle)) {
  color: inherit;
}
body[data-accessibility-dark=true] .tero-home-job-search::before {
  background:
    linear-gradient(
      135deg,
      var(--tero-dark-surface) 0%,
      var(--tero-dark-surface-2) 100%);
  border-color: var(--tero-dark-border);
  box-shadow: 0 18px 34px rgba(0, 0, 0, .34);
}
body[data-accessibility-dark=true] :is(.tero-home-job-search__radius-row, .tero-radius-control, .tero-jobfinder-radius-slider) {
  color: var(--tero-dark-text) !important;
  background-color: var(--tero-dark-surface-2) !important;
  border-color: var(--tero-dark-border) !important;
  box-shadow: none;
}
body[data-accessibility-dark=true] .tero-jobfinder {
  --jobfinder-dark: var(--tero-dark-text);
  --jobfinder-light: var(--tero-dark-surface-2);
  --jobfinder-border: var(--tero-dark-border);
  --jobfinder-panel-bg: var(--tero-dark-surface);
}
body[data-accessibility-dark=true] :is(input:not([type=submit]):not([type=button]):not([type=reset]), select, textarea) {
  color: var(--tero-dark-text) !important;
  background-color: var(--tero-dark-surface-2) !important;
  border-color: var(--tero-dark-border) !important;
  box-shadow: none;
}
body[data-accessibility-dark=true] :is(input, select, textarea)::placeholder {
  color: var(--tero-dark-muted-2) !important;
  opacity: 1;
}
body[data-accessibility-dark=true] :is(input, select, textarea):focus-visible {
  border-color: var(--tero-ci-red) !important;
  outline: 2px solid color-mix(in srgb, var(--tero-ci-red-element-faded) 72%, transparent);
  outline-offset: 2px;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--tero-ci-red) 22%, transparent) !important;
}
body[data-accessibility-dark=true] :is(.tero-cleverreach-form .privacy-row, .tero-form-embed-form .powermail_fieldwrap_privacy_accepted .powermail_field, .tero-job-application-form__privacy, .tero-job-application-form__notice) {
  color: var(--tero-dark-text) !important;
  background-color: var(--tero-dark-surface-2) !important;
  border-color: var(--tero-dark-border) !important;
}
body[data-accessibility-dark=true] :is(.tero-location-card__media, .tero-location-team-card__image-wrap, .tero-location-detail__placeholder, .tero-downloads__placeholder) {
  background: var(--tero-dark-surface-2) !important;
}
body[data-accessibility-dark=true] :is(.tero-jobfinder-card__meta, .tero-jobfinder-card__tags span, .tero-career-jobs .tero-jobfinder-card__tags span, .tero-location-detail__facts dt, .tero-location-team-card p, .tero-interactive-service-cards__intro) {
  color: var(--tero-dark-muted) !important;
}
body[data-accessibility-dark=true] :is(.tero-jobfinder-card__tags span, .tero-career-jobs .tero-jobfinder-card__tags span, .tero-language-flag-badge) {
  background-color: var(--tero-dark-surface-2) !important;
  border-color: var(--tero-dark-border) !important;
}
body[data-accessibility-dark=true] :is(.roofline, p[class*=roofline], [class*=__roofline], [class*=__eyebrow], .tiles_roofline, .tero-jobfinder-roofline) {
  color: var(--tero-ci-red) !important;
}
body[data-accessibility-dark=true] :is(.roofline, p[class*=roofline], [class*=__roofline])::before,
body[data-accessibility-dark=true] :is(.roofline, p[class*=roofline], [class*=__roofline])::after {
  background-color: #747b86 !important;
}
body[data-accessibility-dark=true] :is(.head, #subhead, .allcont, dialog, .tero-newsletter-popup) a:not(.button) {
  color: var(--tero-ci-red-element-faded);
}
body[data-accessibility-dark=true] :is(.head, #subhead, .allcont, dialog, .tero-newsletter-popup) a:not(.button):hover,
body[data-accessibility-dark=true] :is(.head, #subhead, .allcont, dialog, .tero-newsletter-popup) a:not(.button):focus-visible {
  color: var(--tero-ci-red-element-faded);
}
body[data-accessibility-dark=true] .foot,
body[data-accessibility-dark=true] .foot :is(p, li, span, address, strong, em, h1, h2, h3, h4, h5, h6),
body[data-accessibility-dark=true] .foot a:not(.button) {
  color: var(--tero-dark-text) !important;
}
body[data-accessibility-dark=true] .foot a:not(.button):hover,
body[data-accessibility-dark=true] .foot a:not(.button):focus-visible {
  color: #fff !important;
}
body[data-accessibility-dark=true] .foot :is(.handwritten, .roofline, p[class*=roofline], [class*=__roofline], [class*=__eyebrow]) {
  color: var(--tero-ci-red) !important;
}
body[data-accessibility-dark=true] :is(img, video, iframe, canvas, .map_image) {
  filter: none !important;
}
body[data-accessibility-dark=true] .sticky-buttons {
  --tero-grey: var(--tero-dark-border);
  --tero-text: var(--tero-dark-text);
  --tero-heading: var(--tero-dark-text);
  --tero-white: var(--tero-dark-surface);
  color: var(--tero-dark-text);
  color-scheme: dark;
  position: fixed !important;
  right: 0 !important;
  filter: none !important;
}
body[data-accessibility-dark=true] #accessibility-wrap {
  position: relative !important;
  filter: none !important;
}
body[data-accessibility-dark=true] #accessibility-wrap #accessibility-inner,
body[data-accessibility-dark=true] #accessibility-wrap #accessibility-toggle,
body[data-accessibility-dark=true] .sticky-buttons ul li {
  color: var(--tero-dark-text) !important;
  background: var(--tero-dark-surface) !important;
  border-color: var(--tero-dark-border) !important;
}
body[data-accessibility-dark=true] #accessibility-wrap #accessibility-inner .toggle-wrap,
body[data-accessibility-dark=true] #accessibility-wrap #accessibility-inner .labeltext,
body[data-accessibility-dark=true] .sticky-buttons a {
  color: var(--tero-dark-text) !important;
}
body[data-accessibility-dark=true] #accessibility-wrap #accessibility-inner .checktoggle {
  background: var(--tero-dark-surface-2) !important;
  border-color: var(--tero-dark-border) !important;
}
body[data-accessibility-dark=true] #accessibility-wrap #accessibility-inner input:checked + .checktoggle {
  background: var(--tero-ci-red) !important;
  border-color: var(--tero-ci-red) !important;
}
body[data-accessibility-dark=true] #accessibility-wrap #accessibility-reset {
  color: var(--tero-ci-red-faded) !important;
  border-color: var(--tero-dark-border) !important;
}
body[data-accessibility-dark=true] .sticky-buttons :is(.mail, .phone, .facebook, .xing, .instagram)::before,
body[data-accessibility-dark=true] .sticky-buttons .sticky-button-icon {
  border-right-color: var(--tero-dark-border) !important;
}
body[data-accessibility-dark=true] :is(.tero-training-tiles-new__card, .tero-info-tiles-3-new__card, .tero-job-detail-hero-image, .tero-job-detail-meta > div, .tero-job-detail-card, .tero-job-detail-message, .tero-job-contact-box__card, .tero-job-contact-box__message, .tero-job-offers-consent, .tero-job-application-success, .tero-job-application-missing, #tero-chatbot .tero-chatbot__panel, #tero-chatbot .tero-chatbot__message, #tero-chatbot .tero-chatbot__upload) {
  color: var(--tero-dark-text) !important;
  background-color: var(--tero-dark-surface) !important;
  background-image: none !important;
  border-color: var(--tero-dark-border) !important;
}
body[data-accessibility-dark=true] :is(.tero-training-tiles-new__headline, .tero-training-tiles-new__intro, .tero-training-tiles-new__bottom-text, .tero-training-tiles-new__title, .tero-info-tiles-3-new__headline, .tero-info-tiles-3-new__intro, .tero-info-tiles-3-new__text, .tero-info-tiles-3-new__bottom-text, .tero-info-tiles-3-new__title, .frame-type-tero-flexible-text .tero-flexible-text__headline, .frame-type-tero-flexible-text .tero-flexible-text__intro, .frame-type-tero-flexible-text .tero-flexible-text-section__body, .tero-job-detail-meta dd, .tero-job-detail-intro, .tero-job-contact-box__headline, .tero-job-contact-box__person, .tero-job-contact-box__address, .tero-job-contact-box__links strong, .tero-job-application, #tero-chatbot .tero-chatbot__title, #tero-chatbot .tero-chatbot__message, #tero-chatbot .tero-chatbot__upload-title, #tero-chatbot .tero-chatbot__upload-file) {
  color: var(--tero-dark-text) !important;
}
body[data-accessibility-dark=true] #tero-chatbot {
  --tero-chatbot-grey: var(--tero-dark-surface-2);
  --tero-chatbot-border: var(--tero-dark-border);
  --tero-chatbot-text: var(--tero-dark-text);
  --tero-chatbot-shadow: 0 14px 34px rgba(0, 0, 0, .34);
  color: var(--tero-dark-text);
}
body[data-accessibility-dark=true] :is(#tero-chatbot .tero-chatbot__button--choice, #tero-chatbot .tero-chatbot__button--back, #tero-chatbot .tero-chatbot__button[data-action=skip-question]) {
  color: var(--tero-dark-text) !important;
  background: var(--tero-dark-surface-2) !important;
  border-color: var(--tero-dark-border) !important;
}
body[data-accessibility-dark=true] :is(.tero-training-tiles-new__roofline, .tero-info-tiles-3-new__roofline, .tero-flexible-text__roofline, .tero-job-application-jobline, .tero-job-contact-box__eyebrow, .tero-job-contact-box__company, #tero-chatbot .tero-chatbot__eyebrow, .tero-job-detail-meta dt, .tero-job-detail-section h2) {
  color: var(--tero-ci-red) !important;
}
body[data-accessibility-dark=true] .tero-job-application-jobline::before,
body[data-accessibility-dark=true] .tero-job-application-jobline::after {
  background: #747b86 !important;
}
body[data-accessibility-dark=true] :is(.tero-flexible-text--layout-card .tero-flexible-text__inner, .tero-flexible-text--layout-muted .tero-flexible-text__inner, .tero-flexible-text__section--style-contact, .tero-flexible-text__section--style-note, #c198 .dynamic-timeline, .tero-location-team--vertical .tero-location-team__row, .tero-location-team--vertical .tero-location-team__person-text, .tero-form-upload-dropzone, [class^=map_image_wrap_uid] .map_btn) {
  color: var(--tero-dark-text) !important;
  background-color: var(--tero-dark-surface) !important;
  background-image: none !important;
  border-color: var(--tero-dark-border) !important;
}
body[data-accessibility-dark=true] :is(.tero-flexible-text__section, .tero-location-team--vertical .tero-location-team__intro, .tero-location-team--vertical .tero-location-team-card h3, .tero-location-team--vertical .tero-location-team-card__position, .tero-location-team--vertical .tero-location-team__person-text, .tero-location-team--vertical .tero-location-team__bottom-text, .tero-social-media-wall__headline, .tero-social-media-wall__intro, .tero-social-media-wall__text, .tero-social-media-wall__title) {
  color: var(--tero-dark-text) !important;
}
body[data-accessibility-dark=true] :is(.tero-social-media-wall__date, .tero-chatbot__subtitle, .tero-chatbot__status-text, .tero-chatbot__progress-label, .tero-chatbot__upload-file, .tero-chatbot__summary-label) {
  color: var(--tero-dark-muted) !important;
}
body[data-accessibility-dark=true] .frame-type-tero-social-media-wall .tero-social-media-wall__viewport::before {
  background:
    linear-gradient(
      90deg,
      var(--tero-dark-bg) 0%,
      rgba(17, 19, 23, 0) 100%) !important;
}
body[data-accessibility-dark=true] .frame-type-tero-social-media-wall .tero-social-media-wall__viewport::after {
  background:
    linear-gradient(
      270deg,
      var(--tero-dark-bg) 0%,
      rgba(17, 19, 23, 0) 100%) !important;
}
body[data-accessibility-dark=true] #tero-chatbot.tero-chatbot {
  --tero-surface: var(--tero-dark-surface);
  --tero-chat-bg: var(--tero-dark-surface-2);
  --tero-border: var(--tero-dark-border);
  --tero-heading: var(--tero-dark-text);
  --tero-muted: var(--tero-dark-muted);
  --tero-red-soft: color-mix(in srgb, var(--tero-ci-red) 18%, transparent);
  --tero-shadow: 0 18px 50px rgba(0, 0, 0, .38);
  color: var(--tero-dark-text) !important;
}
body[data-accessibility-dark=true] #tero-chatbot.tero-chatbot :is(.tero-chatbot__panel, .tero-chatbot__header, .tero-chatbot__body, .tero-chatbot__thread, .tero-chatbot__composer, .tero-chatbot__progress-wrap, .tero-chatbot__summary, .tero-chatbot__upload, .tero-chatbot__typing, .tero-chatbot__bubble--bot, .tero-chatbot__bubble--system) {
  color: var(--tero-dark-text) !important;
  background-color: var(--tero-dark-surface) !important;
  background-image: none !important;
  border-color: var(--tero-dark-border) !important;
}
body[data-accessibility-dark=true] #tero-chatbot.tero-chatbot :is(.tero-chatbot__body, .tero-chatbot__thread, .tero-chatbot__message, .tero-chatbot__bubble--system, .tero-chatbot__bubble--error) {
  background-color: var(--tero-dark-surface-2) !important;
}
body[data-accessibility-dark=true] #tero-chatbot.tero-chatbot :is(.tero-chatbot__input, .tero-chatbot__select, .tero-chatbot__button--choice, .tero-chatbot__button--secondary, .tero-chatbot__button--back) {
  color: var(--tero-dark-text) !important;
  background: var(--tero-dark-surface-2) !important;
  border-color: var(--tero-dark-border) !important;
}
body[data-accessibility-dark=true] #tero-chatbot.tero-chatbot :is(.tero-chatbot__title, .tero-chatbot__bubble--bot, .tero-chatbot__summary-value, .tero-chatbot__upload-title) {
  color: var(--tero-dark-text) !important;
}
body[data-accessibility-dark=true] #tero-chatbot.tero-chatbot :is(.tero-chatbot__eyebrow, .tero-chatbot__error, .tero-chatbot__button--choice:hover, .tero-chatbot__button--choice:focus, .tero-chatbot__button--choice-active) {
  color: #b81834 !important;
}
body[data-accessibility-dark=true] .tero-supplementary-services__card :is(h3, .tero-supplementary-services__text, .tero-supplementary-services__text p, .tero-supplementary-services__text strong) {
  color: var(--tero-dark-text) !important;
}
body[data-accessibility-dark=true] #tero-chatbot.tero-chatbot .tero-chatbot__header {
  border-bottom: 0 !important;
}
body[data-accessibility-dark=true] .tero-job-application-form .tero-job-application-privacy {
  color: var(--tero-dark-text) !important;
  background: var(--tero-dark-surface-2) !important;
  border-color: var(--tero-dark-border) !important;
}
body[data-accessibility-dark=true] .foot.foot-new .foot-newsletter-cta__highlight {
  color: #fff !important;
}
.allcont :is(p, li) a:not(.button):not([class*=button]),
.tero-job-application-privacy span > a {
  text-decoration: underline !important;
  text-decoration-thickness: 1px;
  text-underline-offset: .14em;
}
.allcont :is(p, li) a:not(.button):not([class*=button]):hover,
.allcont :is(p, li) a:not(.button):not([class*=button]):focus-visible,
.tero-job-application-privacy span > a:hover,
.tero-job-application-privacy span > a:focus-visible {
  text-decoration-thickness: 2px;
}
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted {
  display: block;
}
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted .powermail_field {
  width: 100%;
  max-width: none;
}
.tero-form-embed-form .tero-job-application-privacy {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 26px;
  padding: 18px;
  border: 1px solid rgba(38, 38, 38, .10);
  border-radius: 9px;
  background: #fff;
  line-height: 1.5;
  cursor: pointer;
}
.tero-form-embed-form .tero-job-application-privacy input[type=checkbox] {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  min-height: 18px;
  margin: 0;
  padding: 0;
  accent-color: var(--tero-ci-red);
}
.tero-form-embed-form .tero-job-application-privacy > span {
  display: block;
  min-width: 0;
}
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted {
  margin-top: 26px;
  margin-bottom: 0;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted .powermail_field {
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  max-width: none;
  width: 100%;
}
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted .powermail_label {
  display: none !important;
}
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted .tero-job-application-privacy {
  margin-top: 0 !important;
}
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted + .powermail_fieldwrap_type_submit {
  margin-top: 0 !important;
  padding-top: 24px !important;
  border-top: 0 !important;
}
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted + .powermail_fieldwrap_type_submit .powermail_field,
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted + .powermail_fieldwrap_type_submit .powermail_field input,
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted + .powermail_fieldwrap_type_submit .powermail_field button {
  border-top: 0 !important;
}
.tero-form-embed-form .tero-form-upload-note {
  margin-top: 0;
  color: #5f5f5f;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
}

/* Resources/Public/Css/overrides/00-overrides-header.css */

/* Resources/Public/Css/newsletter/00-chooser.css */
.tero-newsletter-chooser {
  width: 92%;
  max-width: 1160px;
  margin: 0 auto 80px;
}
.tero-newsletter-chooser > .inner {
  width: 100%;
  max-width: 1160px;
  margin: 0 auto;
}
.tero-newsletter-chooser h1 {
  max-width: 900px;
  margin: 0 auto 10px;
  text-align: center;
}
.tero-newsletter-chooser .tero-newsletter-chooser-intro {
  max-width: 900px;
  margin: 0 auto 34px;
  text-align: center;
}
.tero-newsletter-chooser .tero-newsletter-chooser-intro p {
  margin-left: auto;
  margin-right: auto;
}
.tero-newsletter-chooser .tero-newsletter-chooser-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px;
  margin-top: 30px;
}
.tero-newsletter-chooser .tero-newsletter-chooser-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 240px;
  background: #fff;
  padding: 34px 30px 30px;
  box-shadow: 5px 5px 20px rgba(0, 0, 0, .08);
}
.tero-newsletter-chooser .tero-newsletter-chooser-card h2 {
  margin-bottom: 18px;
  color: #1f2933;
}
.tero-newsletter-chooser .tero-newsletter-chooser-card p {
  margin-bottom: 28px;
}
.tero-newsletter-chooser .tero-newsletter-chooser-card .button {
  margin-top: auto;
  align-self: center;
}
@media (max-width: 768px) {
  .tero-newsletter-chooser {
    margin-bottom: 50px;
  }
  .tero-newsletter-chooser .tero-newsletter-chooser-grid {
    grid-template-columns: 1fr;
  }
  .tero-newsletter-chooser .tero-newsletter-chooser-card {
    min-height: 0;
  }
}

/* Resources/Public/Css/newsletter/01-cleverreach-form.css */
.tero-cleverreach-form {
  margin: 0 auto;
  max-width: 900px;
}
.tero-cleverreach-form .formbox {
  background: #f1f2f4;
  padding: 40px;
}
.tero-cleverreach-form .form-row {
  display: flex;
  gap: 24px;
  margin-bottom: 18px;
}
.tero-cleverreach-form .form-field {
  flex: 1;
}
.tero-cleverreach-form label {
  display: block;
  margin-bottom: 8px;
  font-weight: 600;
  color: #082137;
}
.tero-cleverreach-form input[type=text],
.tero-cleverreach-form input[type=email],
.tero-cleverreach-form select {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #d8dde2;
  background: #fff;
  padding: 13px 16px;
  font-size: 16px;
  color: #082137;
}
.tero-cleverreach-form input:focus,
.tero-cleverreach-form select:focus {
  outline: none;
  border-color: var(--tero-ci-red);
}
.tero-cleverreach-form .privacy-row {
  margin: 24px 0;
}
.tero-cleverreach-form .privacy-label {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  line-height: 1.5;
  color: #082137;
}
.tero-cleverreach-form .privacy-label input {
  margin-top: 4px;
  flex: 0 0 auto;
  width: auto;
}
.tero-cleverreach-form .privacy-label a {
  color: var(--tero-ci-red);
  text-decoration: underline;
}
.tero-cleverreach-form .submit-row {
  margin-top: 24px;
  text-align: center;
}
.tero-cleverreach-form .cr_button {
  display: inline-block;
  border: 0;
  background: var(--tero-button-color-start);
  color: #fff;
  padding: 14px 32px;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
}
.tero-cleverreach-form .cr_button:hover {
  background: #082137;
}
@media (max-width: 768px) {
  .tero-cleverreach-form .formbox {
    padding: 28px 20px;
  }
  .tero-cleverreach-form .form-row {
    display: block;
  }
  .tero-cleverreach-form .form-field {
    margin-bottom: 18px;
  }
}

/* Resources/Public/Css/newsletter/02-subpages.css */
.frame-type-tero-newsletter-form > .inner > h1,
.tero-newsletter-form-wrap > .inner > h1 {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 24px;
  text-align: center;
}
.frame-type-tero-newsletter-form,
.tero-newsletter-form-wrap {
  width: 92%;
  max-width: 1160px;
  margin-left: auto;
  margin-right: auto;
}

/* Resources/Public/Css/newsletter/03-popup.css */
.tero-newsletter-popup {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 24px;
  background: rgba(0, 0, 0, .2);
  pointer-events: none;
  opacity: 0;
  transition: opacity .28s ease;
}
.tero-newsletter-popup.is-visible {
  opacity: 1;
  pointer-events: auto;
}
.tero-newsletter-popup__box {
  position: relative;
  display: flex;
  gap: 22px;
  align-items: center;
  box-sizing: border-box;
  width: min(100%, 720px);
  max-height: calc(100vh - 48px);
  overflow: auto;
  padding: 28px 32px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 55px rgba(8, 33, 55, .18);
  color: #082137;
  opacity: 0;
  transform: translateY(-24px) scale(.98);
  transition: opacity .28s ease, transform .28s ease;
}
.tero-newsletter-popup.is-visible .tero-newsletter-popup__box {
  opacity: 1;
  transform: translateY(0) scale(1);
}
.tero-newsletter-popup__close {
  position: absolute;
  top: 10px;
  right: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #082137;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}
.tero-newsletter-popup__close:hover,
.tero-newsletter-popup__close:focus {
  color: var(--tero-ci-red);
  outline: none;
}
.tero-newsletter-popup__content {
  display: flex;
  gap: 22px;
  align-items: center;
  justify-content: space-between;
  min-width: 0;
  width: 100%;
  padding-right: 18px;
}
.tero-newsletter-popup__icon {
  flex: 0 0 74px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 74px;
  height: 74px;
  background: transparent;
  border: 0;
  box-shadow: none;
  border-radius: 0;
  overflow: visible;
}
.tero-newsletter-popup__icon img {
  display: block;
  width: 68px;
  height: 68px;
  object-fit: contain;
  background: transparent;
  border: 0;
  box-shadow: none;
  border-radius: 0;
}
.tero-newsletter-popup__text {
  min-width: 0;
}
.tero-newsletter-popup__text h3 {
  margin: 0 0 8px;
  color: #082137;
  font-size: 22px;
  line-height: 1.2;
}
.tero-newsletter-popup__text p {
  margin: 0;
  color: #34495e;
  line-height: 1.45;
}
.tero-newsletter-popup__button {
  flex: 0 0 auto;
  color: #fff;
  background: var(--tero-button-color-start);
  border-color: var(--tero-button-color-start);
  white-space: nowrap;
}
.tero-newsletter-popup__button:hover,
.tero-newsletter-popup__button:focus {
  background: #082137;
  border-color: #082137;
  color: #fff;
}
@media (max-width: 768px) {
  .tero-newsletter-popup {
    align-items: center;
    padding: 16px;
  }
  .tero-newsletter-popup__box {
    align-items: flex-start;
    gap: 14px;
    width: 100%;
    max-height: calc(100vh - 32px);
    padding: 24px 18px 20px;
    border-radius: 14px;
  }
  .tero-newsletter-popup__content {
    display: block;
    padding-right: 16px;
  }
  .tero-newsletter-popup__icon {
    flex-basis: 58px;
    width: 58px;
    height: 58px;
    border-radius: 16px;
  }
  .tero-newsletter-popup__icon img {
    width: 48px;
    height: 48px;
  }
  .tero-newsletter-popup__text h3 {
    font-size: 19px;
  }
  .tero-newsletter-popup__button {
    margin-top: 16px;
    white-space: normal;
  }
}

/* Resources/Public/Css/newsletter/04-modern-cards-and-popup.css */
.tero-newsletter-intro {
  width: 92%;
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}
.tero-newsletter-intro > .inner {
  box-sizing: border-box;
  padding: 32px 36px;
  border: 1px solid rgba(62, 62, 62, .08);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(27, 31, 38, .08);
}
.tero-newsletter-intro h4 {
  margin-bottom: 0;
  color: #1f2933;
}
.tero-newsletter-chooser .tero-newsletter-chooser-card,
.tero-cleverreach-form .formbox,
.tero-newsletter-popup__box {
  border: 1px solid rgba(62, 62, 62, .08);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 16px 38px rgba(27, 31, 38, .10);
}
.tero-newsletter-chooser .tero-newsletter-chooser-card {
  padding: 36px 34px 32px;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;
}
.tero-newsletter-chooser .tero-newsletter-chooser-card:hover,
.tero-newsletter-chooser .tero-newsletter-chooser-card:focus-within {
  border-color: color-mix(in srgb, var(--tero-ci-red) 18%, transparent);
  box-shadow: 0 20px 44px rgba(27, 31, 38, .13);
  transform: translateY(-2px);
}
.tero-newsletter-chooser .tero-newsletter-chooser-card h2 {
  color: #1f2933;
  font-size: 24px;
  line-height: 1.25;
}
.tero-cleverreach-form .formbox {
  padding: 42px;
}
.tero-cleverreach-form .form-row {
  gap: 20px;
  margin-bottom: 20px;
}
.tero-cleverreach-form label {
  margin-bottom: 7px;
  color: #3e3e3e;
  font-size: 15px;
  font-weight: 700;
}
.tero-cleverreach-form input[type=text],
.tero-cleverreach-form input[type=email],
.tero-cleverreach-form select {
  min-height: 52px;
  border: 1px solid #dedede;
  border-radius: 7px;
  background: #fff;
  padding: 12px 14px;
  color: #30343a;
  font: inherit;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8);
  transition: border-color .2s ease, box-shadow .2s ease;
}
.tero-cleverreach-form input[type=text]:focus,
.tero-cleverreach-form input[type=email]:focus,
.tero-cleverreach-form select:focus {
  border-color: var(--tero-ci-red);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--tero-ci-red) 12%, transparent);
}
.tero-cleverreach-form .privacy-row {
  margin: 26px 0;
  padding: 16px 18px;
  border-radius: 8px;
  background: #f7f8fa;
}
.tero-cleverreach-form .privacy-label {
  margin: 0;
  color: #3e3e3e;
  font-size: 15px;
}
.tero-newsletter-chooser .tero-newsletter-chooser-card .button,
.tero-cleverreach-form .cr_button,
.tero-newsletter-popup__button {
  border: 0;
  border-radius: 7px;
  background-color: var(--tero-button-color-start);
  background-image:
    linear-gradient(
      120deg,
      var(--tero-button-color-end) 0%,
      var(--tero-button-color-start) 36%,
      var(--tero-button-color-middle) 50%,
      var(--tero-button-color-start) 64%,
      var(--tero-button-color-end) 100%);
  background-size: 220% 100%;
  background-position: 0 50%;
  color: #fff;
  box-shadow: 0 12px 24px color-mix(in srgb, var(--tero-ci-red) 24%, transparent);
  transition:
    background-position .35s ease,
    box-shadow .25s ease,
    transform .25s ease,
    color .25s ease;
}
.tero-cleverreach-form .submit-row {
  text-align: center;
}
.tero-cleverreach-form .cr_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 280px;
  min-height: 0;
  height: auto;
  padding: 20px 44px;
  box-sizing: border-box;
  line-height: 1.15;
  text-align: center;
}
.tero-cleverreach-form .cr_button::after {
  content: none;
}
.tero-newsletter-chooser .tero-newsletter-chooser-card .button:hover,
.tero-newsletter-chooser .tero-newsletter-chooser-card .button:focus-visible,
.tero-cleverreach-form .cr_button:hover,
.tero-cleverreach-form .cr_button:focus-visible,
.tero-newsletter-popup__button:hover,
.tero-newsletter-popup__button:focus-visible {
  background-color: var(--tero-button-color-start);
  background-position: 100% 50%;
  color: #fff;
  box-shadow: 0 16px 30px color-mix(in srgb, var(--tero-ci-red) 32%, transparent);
  transform: translateY(-1px);
}
.tero-cleverreach-form .cr_button:active,
.tero-newsletter-popup__button:active {
  transform: translateY(0);
  box-shadow: 0 8px 18px color-mix(in srgb, var(--tero-ci-red) 24%, transparent);
}
.tero-newsletter-popup {
  background: rgba(8, 33, 55, .32);
}
.tero-newsletter-popup__box {
  padding: 30px 34px;
}
.tero-newsletter-popup__close {
  background: #f1f2f4;
  transition: background .2s ease, color .2s ease;
}
.tero-newsletter-popup__close:hover,
.tero-newsletter-popup__close:focus {
  background: color-mix(in srgb, var(--tero-ci-red) 10%, transparent);
}
@media (max-width: 768px) {
  .tero-newsletter-intro > .inner,
  .tero-cleverreach-form .formbox {
    padding: 28px 20px;
  }
  .tero-newsletter-chooser .tero-newsletter-chooser-card {
    padding: 30px 24px;
  }
  .tero-newsletter-popup__box {
    padding: 24px 18px 20px;
  }
}

/* Resources/Public/Css/newsletter/05-responsive-card-popup-adjustments.css */
.tero-map-consent {
  width: 100%;
  max-width: 500px;
  aspect-ratio: 1 / 1;
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f1f2f4;
  border-radius: 18px;
  padding: 24px;
  margin: 0 auto;
  text-align: center;
  color: #082137;
  box-sizing: border-box;
}
.tero-map-consent__content,
.tero-map-consent__content p,
.tero-map-consent__content strong {
  color: #082137;
}
.tero-map-consent__content {
  max-width: 300px;
}
.tero-map-consent__content p {
  margin-bottom: 14px;
}
.tero-map-consent__actions {
  display: flex;
  justify-content: center;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 20px;
}
.tero-map-consent iframe {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  aspect-ratio: 1 / 1;
  border: 0;
  border-radius: 18px;
}
.tero-map-consent.is-loaded {
  display: block;
  padding: 0;
  background: transparent;
}
body[data-accessibility-dark=true] .tero-map-consent:not(.is-loaded),
body[data-accessibility-dark=true] .frame-type-pxtero_googlemap .map-placeholder.tero-map-consent:not(.is-loaded),
body[data-accessibility-dark=true] .tero-location-maps .tero-map-consent:not(.is-loaded) {
  color: var(--tero-dark-text, #f4f5f7) !important;
  background: var(--tero-dark-surface-2, #252a32) !important;
  background-image: none !important;
  border-color: var(--tero-dark-border, #3a404a) !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, .30);
}
body[data-accessibility-dark=true] .tero-map-consent:not(.is-loaded) :is(.tero-map-consent__content, .tero-map-consent__content p, .tero-map-consent__content strong) {
  color: var(--tero-dark-text, #f4f5f7) !important;
}

/* Resources/Public/Css/overrides/01-pre-form-overrides.css */
.tero-thankyou {
  width: min(92vw, 760px);
  margin: 80px auto;
  color: #082137;
  text-align: center;
}
.tero-thankyou__box {
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 18px 55px rgba(8, 33, 55, 0.14);
  padding: 48px 42px;
}
.tero-thankyou__headline {
  margin: 0 0 18px;
  color: #082137;
  font-size: clamp(28px, 4vw, 44px);
  line-height: 1.12;
}
.tero-thankyou__text {
  margin: 0 auto;
  max-width: 620px;
  color: #34465a;
  font-size: 18px;
  line-height: 1.6;
}
.tero-thankyou__text p:last-child {
  margin-bottom: 0;
}
.tero-thankyou__redirect {
  margin: 28px 0 0;
  color: #082137;
  font-size: 17px;
  font-weight: 500;
}
.tero-thankyou__countdown {
  display: inline-flex;
  min-width: 2.2em;
  justify-content: center;
  color: var(--tero-ci-red);
  font-weight: 700;
}
.tero-thankyou__button.button {
  margin-top: 28px;
  background: var(--tero-button-color-start);
  border-color: var(--tero-button-color-start);
  color: #fff;
}
.tero-thankyou__button.button:hover,
.tero-thankyou__button.button:focus {
  background: var(--tero-button-color-end);
  border-color: var(--tero-button-color-end);
  color: #fff;
}
@media (max-width: 640px) {
  .tero-thankyou {
    width: calc(100vw - 32px);
    margin: 48px auto;
  }
  .tero-thankyou__box {
    border-radius: 14px;
    padding: 34px 22px;
  }
  .tero-thankyou__text {
    font-size: 16px;
  }
  .tero-thankyou__redirect {
    font-size: 15px;
  }
}

/* Resources/Public/Css/content-elements/form-validation-home-hero-alignment.css */
.tero-form-error {
  display: none;
  margin-top: 6px;
  color: #c9001f;
  font-size: 13px;
  line-height: 1.35;
}
.powermail_fieldwrap.has-error .tero-form-error,
.tero-job-application-field.has-error .tero-form-error,
.tero-job-application-privacy.has-error + .tero-form-error {
  display: block;
}
.powermail_fieldwrap.has-error input:not([type=submit]):not([type=button]),
.powermail_fieldwrap.has-error textarea,
.tero-job-application-field.has-error input:not([type=submit]):not([type=button]),
.tero-job-application-field.has-error select,
.tero-job-application-field.has-error textarea {
  border-color: #c9001f;
  background-color: rgba(201, 0, 31, 0.05);
}
.powermail_fieldwrap.has-error .powermail_checkbox,
.powermail_fieldwrap.has-error .powermail_radio {
  outline: 2px solid #c9001f;
  outline-offset: 2px;
}
.powermail_fieldwrap.has-error input:not([type=submit]):not([type=button]):focus,
.powermail_fieldwrap.has-error textarea:focus {
  border-color: #c9001f;
  box-shadow: 0 0 0 3px rgba(201, 0, 31, 0.16);
  outline: none;
}
.tero-form-submit.is-disabled,
.tero-form-submit:disabled,
.tero-job-application-actions .button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
  filter: grayscale(0.15);
}
.powermail_form.is-processing {
  position: relative;
}
.tero-form-processing {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 18px 0 0;
  padding: 16px 18px;
  border-left: 5px solid #c9001f;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12);
  color: #333;
  font-size: 16px;
  line-height: 1.45;
}
.tero-form-processing[hidden] {
  display: none;
}
.tero-form-processing__spinner {
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  border: 3px solid rgba(201, 0, 31, 0.18);
  border-top-color: #c9001f;
  border-radius: 50%;
  animation: tero-form-processing-spin 0.8s linear infinite;
}
@keyframes tero-form-processing-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .tero-form-processing__spinner {
    animation: none;
  }
}
@media (min-width: 1537px) {
  .frame-type-pxtero_bannerisolated .banner.isolated > .text {
    left: calc((100vw - 1536px) / 2);
  }
}

/* Resources/Public/Css/jobs/00-jobfinder.css */
.tero-jobfinder {
  --jobfinder-red: var(--tero-ci-red);
  --jobfinder-dark: #3e3e3e;
  --jobfinder-light: #f1f2f4;
  --jobfinder-border: #dedede;
  --jobfinder-sticky-top: 104px;
  --jobfinder-panel-bg: #f8f8f8;
  --jobfinder-panel-shadow: 0 16px 34px rgba(0, 0, 0, .08);
  width: 100%;
}
.tero-jobfinder-hero {
  width: 92%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 70px 0 45px;
}
.tero-jobfinder-roofline {
  margin: 0 0 10px;
  color: var(--jobfinder-red);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.tero-jobfinder-hero h1 {
  margin: 0 0 18px;
}
.tero-jobfinder-intro {
  max-width: 820px;
  margin-bottom: 32px;
}
.tero-jobfinder-search {
  position: sticky;
  top: var(--jobfinder-sticky-top);
  z-index: 20;
  display: grid;
  grid-template-columns: minmax(240px, 1.25fr) minmax(200px, .9fr) minmax(230px, .85fr);
  gap: 18px;
  align-items: end;
  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, .10) 0%,
      rgba(255, 255, 255, 0) 34%),
    linear-gradient(
      145deg,
      var(--tero-ci-red) 0%,
      var(--tero-ci-red-element-faded) 52%,
      var(--tero-ci-red) 100%);
  padding: 26px 28px;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 8px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .20),
    inset 0 -18px 28px color-mix(in srgb, var(--tero-ci-red) 16%, transparent),
    0 18px 34px color-mix(in srgb, var(--tero-ci-red) 18%, transparent),
    0 10px 28px rgba(0, 0, 0, .10);
}
.tero-jobfinder-search label,
.tero-jobfinder-filter label {
  display: block;
  margin-bottom: 8px;
  font-weight: 700;
}
.tero-jobfinder-search label {
  color: #fff;
}
.tero-jobfinder-search input:not([type=range]),
.tero-jobfinder-search select,
.tero-jobfinder-filter select {
  width: 100%;
  min-height: 52px;
  border: 1px solid var(--jobfinder-border);
  border-radius: 6px;
  background: #fff;
  padding: 12px 14px;
  font: inherit;
}
.tero-jobfinder-search__button {
  min-height: 52px;
  white-space: nowrap;
}
.tero-jobfinder-search .tero-radius-control {
  min-height: 52px;
  border-color: var(--jobfinder-border);
  padding: 12px 14px;
}
.tero-jobfinder-search .tero-jobfinder-radius-slider {
  --radius-progress: 0%;
  --radius-track: color-mix(in srgb, var(--tero-ci-red-element-faded) 18%, white);
  --radius-fill: var(--jobfinder-red);
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 52px;
  padding: 10px 12px;
  overflow: visible;
  border: 1px solid var(--jobfinder-border);
  border-radius: 6px;
  background: #fff;
  box-shadow: none;
}
.tero-jobfinder-search .tero-jobfinder-radius-slider input[type=range].tero-jobfinder-radius-track {
  flex: 1 1 auto;
  display: block;
  width: 100%;
  min-width: 0;
  height: 24px;
  margin: 0;
  padding: 0;
  overflow: visible;
  appearance: none;
  -webkit-appearance: none;
  background:
    linear-gradient(
      90deg,
      var(--radius-fill) 0%,
      var(--radius-fill) var(--radius-progress),
      var(--radius-track) var(--radius-progress),
      var(--radius-track) 100%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: calc(100% - 20px) 8px;
  border: 0;
  border-radius: 999px;
  cursor: pointer;
  outline: 0;
}
.tero-jobfinder-search .tero-jobfinder-radius-slider input[type=range].tero-jobfinder-radius-track::-webkit-slider-runnable-track {
  height: 8px;
  border: 0;
  border-radius: 999px;
  background: transparent;
}
.tero-jobfinder-search .tero-jobfinder-radius-slider input[type=range].tero-jobfinder-radius-track::-webkit-slider-thumb {
  width: 20px;
  height: 20px;
  margin-top: -6px;
  border: 0;
  border-radius: 50%;
  background: var(--jobfinder-red);
  box-shadow: 0 1px 4px rgba(0, 0, 0, .20);
  -webkit-appearance: none;
  appearance: none;
}
.tero-jobfinder-search .tero-jobfinder-radius-slider input[type=range].tero-jobfinder-radius-track::-moz-range-track {
  height: 8px;
  border: 0;
  border-radius: 999px;
  background: var(--radius-track);
}
.tero-jobfinder-search .tero-jobfinder-radius-slider input[type=range].tero-jobfinder-radius-track::-moz-range-progress {
  height: 8px;
  border-radius: 999px;
  background: var(--radius-fill);
}
.tero-jobfinder-search .tero-jobfinder-radius-slider input[type=range].tero-jobfinder-radius-track::-moz-range-thumb {
  width: 20px;
  height: 20px;
  border: 0;
  border-radius: 50%;
  background: var(--jobfinder-red);
  box-shadow: 0 1px 4px rgba(0, 0, 0, .20);
}
.tero-jobfinder-search .tero-jobfinder-radius-slider input[type=range].tero-jobfinder-radius-track:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--tero-ci-red) 22%, transparent);
}
.tero-jobfinder-search .tero-jobfinder-radius-slider .tero-jobfinder-radius-value {
  flex: 0 0 auto;
  min-width: 78px;
  width: auto;
  color: var(--jobfinder-dark);
  font-weight: 800;
  line-height: 1.15;
  text-align: right;
  white-space: nowrap;
}
.tero-jobfinder-layout {
  display: grid;
  grid-template-columns: minmax(250px, 310px) minmax(0, 1fr);
  gap: 32px;
  width: 92%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 18px 0 72px;
  align-items: flex-start;
}
.tero-jobfinder-filters {
  position: sticky;
  top: var(--jobfinder-sticky-top);
}
.tero-jobfinder-filterbox {
  background:
    linear-gradient(
      180deg,
      var(--tero-grey, #f1f2f4) 0%,
      #e9ebee 100%);
  border: 1px solid rgba(0, 0, 0, .08);
  border-left: 4px solid color-mix(in srgb, var(--tero-ci-red) 70%, transparent);
  border-radius: 10px;
  padding: 24px 22px;
  box-shadow: 0 18px 42px rgba(0, 0, 0, .09);
}
.tero-jobfinder-filterbox__top {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
}
.tero-jobfinder-filterbox h2 {
  margin: 0;
  font-size: 25px;
}
.tero-jobfinder-reset {
  border: 0;
  background: transparent;
  color: var(--jobfinder-red);
  font-weight: 700;
  cursor: pointer;
  padding: 0;
}
.tero-jobfinder-filter {
  margin-top: 18px;
}
.tero-jobfinder-filter label {
  color: var(--jobfinder-dark);
}
.tero-jobfinder-results {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.tero-jobfinder-results__top {
  flex: 0 0 auto;
  display: flex;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 0;
  padding: 20px 22px 16px;
  background: var(--jobfinder-panel-bg);
  border: 1px solid rgba(0, 0, 0, .08);
  border-bottom: 0;
  border-radius: 10px 10px 0 0;
  box-shadow: 0 10px 24px rgba(0, 0, 0, .05);
}
.tero-jobfinder-results__count {
  margin: 0;
  font-size: 21px;
}
.tero-jobfinder-results__body {
  padding: 24px 22px 24px;
  background: var(--jobfinder-panel-bg);
  border: 1px solid rgba(0, 0, 0, .08);
  border-top: 0;
  border-radius: 0;
  box-shadow: rgba(50, 50, 93, .14) 0 24px 42px -18px inset, rgba(0, 0, 0, .16) 0 14px 26px -22px inset;
  border-bottom: 0;
}
.tero-jobfinder-list {
  display: grid;
  gap: 18px;
}
.tero-jobfinder-card {
  display: flex;
  justify-content: space-between;
  gap: 28px;
  align-items: center;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, .08);
  border-radius: 6px;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .07);
  padding: 28px 30px;
  position: relative;
  overflow: hidden;
  transition:
    transform .2s ease,
    box-shadow .2s ease,
    border-color .2s ease;
}
.tero-jobfinder-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 5px;
  height: 100%;
  background: var(--jobfinder-red);
}
.tero-jobfinder-card[hidden] {
  display: none;
}
.tero-jobfinder-card__main {
  min-width: 0;
  flex: 1 1 auto;
}
.tero-jobfinder-card__meta {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 8px 12px;
  max-width: 100%;
  margin: 0 0 14px;
  color: #5c5c5c;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
}
.tero-jobfinder-card__meta-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  white-space: nowrap;
}
.tero-jobfinder-card__meta-item > span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.tero-jobfinder-card__meta-item svg {
  flex: 0 0 15px;
  width: 15px;
  height: 15px;
  fill: rgba(184, 24, 52, .78);
}
.tero-jobfinder-card__meta-item:first-child {
  flex: 0 1 auto;
}
.tero-jobfinder-card__meta-item:last-child {
  flex: 0 0 auto;
}
.tero-jobfinder-card__meta-item--salary {
  flex: 0 0 auto;
  padding: 4px 10px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--tero-ci-red) 10%, transparent);
  color: var(--jobfinder-red);
  font-weight: 900;
}
.tero-jobfinder-card__meta-item--salary svg {
  fill: #b81834;
}
.tero-jobfinder-card h2 {
  margin: 0 0 14px;
  font-size: 28px;
  line-height: 1.16;
}
.tero-jobfinder-card p {
  margin-bottom: 0;
}
.tero-jobfinder-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 14px;
}
.tero-jobfinder-card__tags span {
  display: inline-block;
  background: var(--jobfinder-light);
  border-radius: 4px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.25;
}
.tero-jobfinder-card__mission {
  display: grid;
  gap: 7px;
  margin: 18px 0 0;
  padding-left: 14px;
  color: #4a4a4a;
  font-size: 15px;
  line-height: 1.5;
}
.tero-jobfinder-card__mission li {
  padding-left: 8px;
}
.tero-jobfinder-card__mission li::marker {
  color: var(--jobfinder-red);
}
.tero-jobfinder-card .button {
  flex: 0 0 auto;
  min-height: 46px;
  padding: 13px 22px;
}
.tero-jobfinder-card .button,
.tero-home-job-search__submit {
  border: 0;
  border-radius: 8px;
  background-image: var(--tero-button-gradient);
  background-position: left center;
  background-size: 200% auto;
  box-shadow: 0 12px 26px color-mix(in srgb, var(--tero-ci-red) 18%, transparent), 0 5px 14px rgba(0, 0, 0, .08);
  color: #fff;
  font-weight: 900;
  white-space: nowrap;
  transition:
    background-position .35s ease,
    box-shadow .2s ease,
    transform .12s ease,
    filter .2s ease;
}
.tero-jobfinder-card .button::after,
.tero-home-job-search__submit::after {
  content: none;
  display: none;
}
.tero-jobfinder-card .button:not(:disabled):hover,
.tero-jobfinder-card .button:not(:disabled):focus-visible {
  background-position: right center;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--tero-ci-red) 18%, transparent), 0 6px 16px rgba(0, 0, 0, .07);
  filter: brightness(1.03);
}
.tero-jobfinder-card .button:not(:disabled):active {
  transform: scale(.98);
}
.tero-home-job-search__submit:hover,
.tero-home-job-search__submit:focus,
.tero-home-job-search__submit:focus-visible,
.tero-home-job-search__submit:active {
  color: #fff;
}
.tero-home-job-search__submit:not(:disabled):hover,
.tero-home-job-search__submit:not(:disabled):focus-visible {
  background: var(--tero-button-gradient) right center / 200% auto no-repeat;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--tero-ci-red) 20%, transparent), 0 8px 18px color-mix(in srgb, var(--tero-ci-red) 10%, transparent);
  filter: none;
  transform: translateY(-1px);
}
.tero-home-job-search__submit:not(:disabled):active {
  background: var(--tero-button-gradient) right center / 200% auto no-repeat;
  box-shadow: 0 10px 22px color-mix(in srgb, var(--tero-ci-red) 16%, transparent), 0 4px 12px color-mix(in srgb, var(--tero-ci-red) 8%, transparent);
  filter: none;
  transform: translateY(0);
}
.tero-jobfinder-card--linked {
  cursor: pointer;
}
.tero-jobfinder-card--linked:hover,
.tero-jobfinder-card--linked:focus-within {
  border-color: color-mix(in srgb, var(--tero-ci-red) 24%, transparent);
  box-shadow: 0 14px 30px rgba(0, 0, 0, .11);
  transform: translateY(-2px);
}
.tero-jobfinder-card--linked:hover h2,
.tero-jobfinder-card--linked:focus-within h2 {
  color: var(--jobfinder-red);
}
.tero-jobfinder-empty {
  background: var(--jobfinder-light);
  padding: 24px;
  font-weight: 700;
}
.tero-jobfinder-status {
  margin: 18px 0 0;
  padding: 18px 20px;
  background: var(--jobfinder-light);
  color: var(--jobfinder-dark);
  font-weight: 700;
  text-align: center;
}
.tero-jobfinder-status {
  margin: 0;
}
.tero-jobfinder-status--error {
  color: #b81834;
}
.tero-jobfinder-results__footer {
  padding: 18px 22px;
  border: 1px solid rgba(0, 0, 0, .08);
  border-top: 0;
  border-radius: 0 0 10px 10px;
  background: var(--jobfinder-panel-bg);
}
@media (max-width: 1100px) {
  .tero-jobfinder-search {
    position: static;
  }
  .tero-jobfinder-layout {
    grid-template-columns: 1fr;
  }
  .tero-jobfinder-filters {
    position: static;
    margin-top: 0;
  }
  .tero-jobfinder-results__top {
    padding: 16px 14px 12px;
    border-radius: 8px 8px 0 0;
  }
  .tero-jobfinder-results__body {
    padding: 16px 14px;
    border-radius: 0;
    box-shadow: inset 0 12px 18px -20px rgba(0, 0, 0, .14);
  }
  .tero-jobfinder-results__footer {
    padding: 16px 14px;
    border-radius: 0 0 8px 8px;
  }
}
@media (max-width: 780px) {
  .tero-jobfinder-search {
    grid-template-columns: 1fr;
    width: 100%;
  }
  .tero-radius-control {
    grid-template-columns: 1fr;
  }
  .tero-jobfinder-search .tero-jobfinder-radius-slider {
    flex-wrap: wrap;
  }
  .tero-jobfinder-radius-value {
    flex-basis: 100%;
    text-align: left;
  }
  .tero-jobfinder-card {
    flex-direction: column;
    align-items: flex-start;
  }
  .tero-jobfinder-card__meta {
    flex-wrap: wrap;
  }
  .tero-jobfinder-card__meta-item {
    white-space: normal;
  }
  .tero-jobfinder-card__meta-item:first-child,
  .tero-jobfinder-card__meta-item:last-child {
    flex: 0 1 auto;
  }
}
.tero-jobfinder-pagination {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  width: 100%;
  gap: 24px;
  margin: 0;
}
.tero-jobfinder-pagination__side {
  display: flex;
  align-items: center;
  min-width: 0;
}
.tero-jobfinder-pagination__side--left {
  justify-self: start;
}
.tero-jobfinder-pagination__side--right {
  justify-self: end;
}
.tero-jobfinder-pagination__center {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  white-space: nowrap;
}
.tero-jobfinder-pagination__control {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  white-space: nowrap;
}
.tero-jobfinder-pagination select {
  width: auto;
  min-width: 72px;
  min-height: 42px;
  box-sizing: border-box;
  padding: 8px 12px;
  border: 1px solid var(--jobfinder-border);
  border-radius: 6px;
  background: #fff;
  font: inherit;
}
.tero-jobfinder-pagination__status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  white-space: nowrap;
}
.tero-jobfinder-pagination__button.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  box-sizing: border-box;
  width: auto;
  min-height: 46px;
  padding: 13px 22px;
  border: 0;
  border-radius: 8px;
  background-image: var(--tero-button-gradient);
  background-position: left center;
  background-size: 200% auto;
  box-shadow: 0 12px 26px color-mix(in srgb, var(--tero-ci-red) 18%, transparent), 0 5px 14px rgba(0, 0, 0, .08);
  color: #fff;
  font-family: var(--font-head);
  font-weight: 900;
  line-height: 120%;
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer;
  transition:
    background-position .35s ease,
    box-shadow .2s ease,
    transform .12s ease,
    filter .2s ease;
}
.tero-jobfinder-pagination__button.button::after {
  content: none;
  display: none;
}
.tero-jobfinder-pagination__button.button:not(:disabled):hover,
.tero-jobfinder-pagination__button.button:not(:disabled):focus-visible {
  background-position: right center;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--tero-ci-red) 18%, transparent), 0 6px 16px rgba(0, 0, 0, .07);
  color: #fff;
  filter: brightness(1.03);
}
.tero-jobfinder-pagination__button.button:not(:disabled):active {
  transform: scale(.98);
}
.tero-jobfinder-pagination__button.button:disabled {
  opacity: .45;
  cursor: default;
  pointer-events: none;
}
@media (max-width: 900px) {
  .tero-jobfinder-pagination {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 14px;
  }
  .tero-jobfinder-pagination__side--left,
  .tero-jobfinder-pagination__side--right {
    justify-self: center;
  }
  .tero-jobfinder-pagination__center {
    flex-wrap: wrap;
  }
}
.tero-jobfinder-pagination__control {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  box-sizing: border-box;
  margin: 0;
  padding: 0 8px 0 14px;
  border: 1px solid var(--jobfinder-border);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 26px color-mix(in srgb, var(--tero-ci-red) 10%, transparent), 0 5px 14px rgba(0, 0, 0, .08);
  color: #333;
  white-space: nowrap;
  transition:
    border-color .2s ease,
    box-shadow .2s ease,
    transform .12s ease;
}
.tero-jobfinder-pagination__control > span {
  font-family: var(--font-head);
  font-weight: 700;
  line-height: 1.2;
}
.tero-jobfinder-pagination__control select {
  width: auto;
  min-width: 70px;
  min-height: 36px;
  box-sizing: border-box;
  margin: 0;
  padding: 7px 32px 7px 11px;
  border: 1px solid #dadada;
  border-radius: 6px;
  background-color: #fff;
  color: #333;
  font: inherit;
  cursor: pointer;
}
.tero-jobfinder-pagination__side--right select {
  min-width: 76px;
}
.tero-jobfinder-pagination__control:hover {
  border-color: color-mix(in srgb, var(--tero-ci-red) 28%, transparent);
  box-shadow: 0 14px 30px color-mix(in srgb, var(--tero-ci-red) 12%, transparent), 0 6px 16px rgba(0, 0, 0, .08);
}
.tero-jobfinder-pagination__control:focus-within {
  border-color: var(--jobfinder-red);
  box-shadow: 0 14px 30px color-mix(in srgb, var(--tero-ci-red) 14%, transparent), 0 6px 16px rgba(0, 0, 0, .08);
}
.tero-jobfinder-pagination__control select:focus {
  border-color: var(--jobfinder-red);
}
.tero-jobfinder-pagination__status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  box-sizing: border-box;
  padding: 0 18px;
  border: 1px solid var(--jobfinder-border);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 26px color-mix(in srgb, var(--tero-ci-red) 10%, transparent), 0 5px 14px rgba(0, 0, 0, .08);
  color: #333;
  font-family: var(--font-head);
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}
@media (max-width: 900px) {
  .tero-jobfinder-pagination__control,
  .tero-jobfinder-pagination__status {
    max-width: 100%;
  }
}
@media (min-width: 901px) {
  .tero-jobfinder-pagination {
    display: grid;
    grid-template-columns: max-content minmax(120px, 1fr) max-content minmax(120px, 1fr) max-content;
    align-items: center;
    width: 100%;
    gap: 22px;
    margin: 0;
  }
  .tero-jobfinder-pagination__side,
  .tero-jobfinder-pagination__center {
    display: contents;
  }
  .tero-jobfinder-pagination__button.button {
    width: 100%;
    min-width: 0;
    max-width: none;
    height: 50px;
    min-height: 50px;
    box-sizing: border-box;
  }
}
.tero-jobfinder-pagination__control,
.tero-jobfinder-pagination__status {
  height: 50px;
  min-height: 50px;
  box-sizing: border-box;
}
.tero-jobfinder-pagination__control select {
  width: auto;
  min-width: 70px;
  border: 0;
  box-shadow: none;
  outline: 0;
  background-color: transparent;
}
.tero-jobfinder-pagination__control select:focus,
.tero-jobfinder-pagination__control select:focus-visible {
  border: 0;
  box-shadow: none;
  outline: 0;
}
@media (max-width: 900px) {
  .tero-jobfinder-pagination__side {
    display: flex;
  }
  .tero-jobfinder-pagination__center {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
  }
  .tero-jobfinder-pagination__button.button {
    min-height: 50px;
  }
}
body[data-accessibility-dark=true] .tero-jobfinder {
  color-scheme: dark;
}
body[data-accessibility-dark=true] .tero-jobfinder :is(.tero-jobfinder-search, .tero-jobfinder-filters, .tero-jobfinder-filter) {
  color: var(--tero-dark-text, #f4f5f7);
  background-color: var(--tero-dark-surface, #1b1f26);
  border-color: var(--tero-dark-border, #3a404a);
}
body[data-accessibility-dark=true] .tero-jobfinder :is(.tero-jobfinder-search label, .tero-jobfinder-filter label, .tero-jobfinder-filter__options label) {
  color: var(--tero-dark-text, #f4f5f7);
}
body[data-accessibility-dark=true] .tero-jobfinder :is(input:not([type=range]), select, textarea) {
  color: var(--tero-dark-text, #f4f5f7) !important;
  background-color: var(--tero-dark-surface-2, #252a32) !important;
  border-color: var(--tero-dark-border, #3a404a) !important;
}
body[data-accessibility-dark=true] .tero-jobfinder select option {
  color: var(--tero-dark-text, #f4f5f7);
  background: var(--tero-dark-surface-2, #252a32);
}
body[data-accessibility-dark=true] .tero-jobfinder-pagination__control,
body[data-accessibility-dark=true] .tero-jobfinder-pagination__status {
  color: var(--tero-dark-text, #f4f5f7);
  background: var(--tero-dark-surface-2, #252a32);
  border-color: var(--tero-dark-border, #3a404a);
}
body[data-accessibility-dark=true] .tero-jobfinder-pagination__control select {
  color: var(--tero-dark-text, #f4f5f7) !important;
  background-color: transparent !important;
}
body[data-accessibility-dark=true] .tero-jobfinder-pagination__control:focus-within {
  border-color: var(--tero-ci-red);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--tero-ci-red) 18%, transparent);
}
body[data-accessibility-dark=true] .tero-jobfinder-filterbox {
  background:
    linear-gradient(
      180deg,
      var(--tero-dark-surface, #1b1f26) 0%,
      var(--tero-dark-surface-2, #252a32) 100%);
  border-color: var(--tero-dark-border, #3a404a);
  border-left-color: var(--tero-ci-red);
  color: var(--tero-dark-text, #f4f5f7);
  box-shadow: 0 18px 42px rgba(0, 0, 0, .28);
}
body[data-accessibility-dark=true] .tero-jobfinder-filterbox h2,
body[data-accessibility-dark=true] .tero-jobfinder-filter__summary,
body[data-accessibility-dark=true] .tero-jobfinder-filter__options,
body[data-accessibility-dark=true] .tero-jobfinder-filter__options label {
  color: var(--tero-dark-text, #f4f5f7);
}
body[data-accessibility-dark=true] .tero-jobfinder-filter--dropdown {
  border-color: var(--tero-dark-border, #3a404a);
  background: var(--tero-dark-surface-2, #252a32);
}
body[data-accessibility-dark=true] .tero-jobfinder-filter__summary {
  background: var(--tero-dark-surface-2, #252a32);
}
body[data-accessibility-dark=true] .tero-jobfinder-filter[open] .tero-jobfinder-filter__summary {
  background: var(--tero-dark-surface, #1b1f26);
}
body[data-accessibility-dark=true] .tero-jobfinder-filter__options {
  background: var(--tero-dark-surface, #1b1f26);
  border-color: var(--tero-dark-border, #3a404a);
}
body[data-accessibility-dark=true] .tero-jobfinder-filter__summary:hover,
body[data-accessibility-dark=true] .tero-jobfinder-filter__summary:focus-visible {
  color: #fff;
  background: color-mix(in srgb, var(--tero-ci-red) 18%, transparent);
}
.tero-jobfinder-filter__fieldset {
  min-inline-size: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

/* Resources/Public/Css/jobs/01-application-page-base.css */
.tero-job-application {
  width: 92%;
  max-width: 980px;
  margin: 45px auto 80px;
  color: #222;
}
.tero-job-application-hero {
  max-width: 860px;
  margin: 0 auto 24px;
  padding: 0;
  background: transparent;
}
.tero-job-application-hero h1 {
  font-size: 30px;
  margin: 0 0 8px;
}
.tero-job-application-jobline {
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 8px;
}
.tero-job-application-summary {
  display: none !important;
}
.tero-job-application-form,
.tero-job-application-success,
.tero-job-application-missing {
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
}
.tero-job-application-form {
  background: #fff;
  box-shadow: none;
  padding: 0;
}
.tero-job-application-form fieldset {
  border: 0;
  border-bottom: 1px solid #e2e2e2;
  padding: 24px 0;
  margin: 0;
}
.tero-job-application-form legend {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 18px;
  color: #222;
}
.tero-job-application-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.tero-job-application-field--full {
  grid-column: 1 / -1;
}
.tero-job-application-form label {
  display: block;
  font-weight: 600;
  margin-bottom: 7px;
}
.tero-job-application-form input,
.tero-job-application-form select,
.tero-job-application-form textarea {
  width: 100%;
  min-height: 44px;
  border: 1px solid #cfcfcf;
  border-radius: 6px;
  padding: 10px 12px;
  font-size: 15px;
  background: #fff;
}
.tero-job-application-form textarea {
  min-height: 120px;
}
.tero-job-application-form input:focus,
.tero-job-application-form select:focus,
.tero-job-application-form textarea:focus {
  border-color: var(--tero-ci-red);
  outline: 2px solid color-mix(in srgb, var(--tero-ci-red) 12%, transparent);
}
.tero-job-application-dropzone {
  border: 1px dashed #cfcfcf;
  border-radius: 8px;
  min-height: 130px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-align: center;
  background: #fff;
  padding: 24px;
  transition: border-color .2s ease, background-color .2s ease;
}
.tero-job-application-dropzone.is-dragover {
  border-color: var(--tero-ci-red);
  background: #fff6f8;
}
.tero-job-application-filebutton {
  display: inline-block;
  background: var(--tero-button-color-start);
  color: #fff;
  border-radius: 6px;
  padding: 9px 18px;
  cursor: pointer;
  font-weight: 700;
}
.tero-job-application-dropzone input[type=file] {
  display: none;
}
.tero-job-application-filelist {
  margin-top: 12px;
  font-size: 14px;
}
.tero-job-application-upload-note {
  margin-top: 0;
  color: #5f5f5f;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
}
.tero-job-application-privacy {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 24px 0;
  border-bottom: 1px solid #e2e2e2;
  font-size: 14px;
  font-weight: 400;
}
.tero-job-application-privacy input {
  width: auto;
  min-height: auto;
  margin-top: 3px;
}
.tero-job-application-required-note {
  color: #b81834;
  font-size: 14px;
  padding: 18px 0;
  border-bottom: 1px solid #e2e2e2;
}
.tero-job-application-actions {
  text-align: center;
  padding: 26px 0 0;
}
.tero-job-application-actions .button,
.tero-job-application .button {
  min-width: 220px;
  border-radius: 6px;
}
.tero-job-application-actionlinks {
  margin-top: 14px;
  font-size: 14px;
}
.tero-job-application-actionlinks a {
  margin: 0 8px;
}
.tero-job-application-success,
.tero-job-application-missing {
  margin-top: 24px;
  padding: 18px;
  border-left: 6px solid #b81834;
  background: #f7f7f7;
}
.tero-job-application-missing {
  background: #fff3f5;
}
#tero-chatbot {
  --tero-chatbot-red: var(--tero-ci-red);
  --tero-chatbot-red-dark: var(--tero-ci-red);
  --tero-chatbot-grey: #f5f5f5;
  --tero-chatbot-border: #e0e0e0;
  --tero-chatbot-text: #3e3e3e;
  --tero-chatbot-radius: 14px;
  --tero-chatbot-shadow: 0 14px 34px rgba(27, 31, 38, .10);
  box-sizing: border-box;
  width: min(100%, 760px);
  min-height: 280px;
  margin: 28px auto 0;
  color: var(--tero-chatbot-text);
}
#tero-chatbot *,
#tero-chatbot *::before,
#tero-chatbot *::after {
  box-sizing: inherit;
}
#tero-chatbot .tero-chatbot__panel {
  width: 100%;
  padding: 28px;
  border: 1px solid var(--tero-chatbot-border);
  border-radius: var(--tero-chatbot-radius);
  background: #fff;
  box-shadow: var(--tero-chatbot-shadow);
}
#tero-chatbot .tero-chatbot__header {
  margin-bottom: 22px;
}
#tero-chatbot .tero-chatbot__eyebrow {
  margin: 0 0 8px;
  color: var(--tero-chatbot-red);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
}
#tero-chatbot .tero-chatbot__title {
  margin: 0;
  color: var(--tero-chatbot-text);
  font-size: 26px;
  font-weight: 700;
  line-height: 1.2;
}
#tero-chatbot .tero-chatbot__message {
  margin-bottom: 20px;
  padding: 18px;
  border: 1px solid var(--tero-chatbot-border);
  border-radius: 10px;
  background: var(--tero-chatbot-grey);
}
#tero-chatbot .tero-chatbot__message p,
#tero-chatbot .tero-chatbot__complete p,
#tero-chatbot .tero-chatbot__loading p {
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
}
#tero-chatbot .tero-chatbot__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 12px 20px;
  border: 1px solid transparent;
  border-radius: 10px;
  background: #fff;
  color: var(--tero-chatbot-text);
  font: inherit;
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
  transition:
    background-color .18s ease,
    border-color .18s ease,
    color .18s ease,
    box-shadow .18s ease,
    transform .18s ease;
}
#tero-chatbot .tero-chatbot__button:hover,
#tero-chatbot .tero-chatbot__button:focus-visible {
  transform: translateY(-1px);
}
#tero-chatbot .tero-chatbot__button--primary {
  width: 100%;
  border-color: var(--tero-chatbot-red);
  background: var(--tero-chatbot-red);
  color: #fff;
  box-shadow: 0 10px 22px color-mix(in srgb, var(--tero-ci-red) 20%, transparent);
}
#tero-chatbot .tero-chatbot__button--primary:hover,
#tero-chatbot .tero-chatbot__button--primary:focus-visible {
  background: var(--tero-chatbot-red-dark);
  color: #fff;
}
#tero-chatbot .tero-chatbot__button--choice,
#tero-chatbot .tero-chatbot__button--back {
  background: #fff !important;
  border-color: #d8d8d8 !important;
  color: var(--tero-chatbot-text) !important;
  box-shadow: 0 4px 12px rgba(27, 31, 38, .06);
}
#tero-chatbot .tero-chatbot__button[data-action=skip-question] {
  background: #fff !important;
  border-color: #d8d8d8 !important;
  color: var(--tero-chatbot-text) !important;
}
#tero-chatbot .tero-chatbot__button--choice:hover,
#tero-chatbot .tero-chatbot__button--choice:focus-visible,
#tero-chatbot .tero-chatbot__button--back:hover,
#tero-chatbot .tero-chatbot__button--back:focus-visible {
  border-color: var(--tero-chatbot-red) !important;
  color: var(--tero-chatbot-red) !important;
  box-shadow: 0 7px 18px color-mix(in srgb, var(--tero-ci-red) 12%, transparent);
}
#tero-chatbot .tero-chatbot__upload {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 18px;
  padding: 22px;
  border: 1px dashed #c8c8c8;
  border-radius: 12px;
  background: #fafafa;
  cursor: pointer;
  transition:
    background-color .18s ease,
    border-color .18s ease,
    box-shadow .18s ease;
}
#tero-chatbot .tero-chatbot__upload--dragover,
#tero-chatbot .tero-chatbot__upload:focus-within {
  border-color: var(--tero-chatbot-red);
  background: #fff7f8;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--tero-ci-red) 10%, transparent);
}
#tero-chatbot .tero-chatbot__upload-title {
  color: var(--tero-chatbot-text);
  font-size: 16px;
  font-weight: 700;
}
#tero-chatbot .tero-chatbot__upload-file {
  color: #666;
  font-size: 14px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
#tero-chatbot .tero-chatbot__file {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}
#tero-chatbot .tero-chatbot__error {
  margin: -4px 0 16px;
  color: var(--tero-chatbot-red);
  font-size: 14px;
  line-height: 1.4;
}
#tero-chatbot .tero-chatbot__loading,
#tero-chatbot .tero-chatbot__complete {
  display: flex;
  min-height: 190px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  text-align: center;
}
#tero-chatbot .tero-chatbot__spinner {
  width: 38px;
  height: 38px;
  border: 3px solid var(--tero-chatbot-border);
  border-top-color: var(--tero-chatbot-red);
  border-radius: 50%;
  animation: tero-chatbot-spin 900ms linear infinite;
}
#tero-chatbot .tero-chatbot__progress-wrap {
  margin-bottom: 18px;
}
#tero-chatbot .tero-chatbot__progress-label {
  margin-bottom: 8px;
  color: #666;
  font-size: 14px;
  line-height: 1.4;
}
#tero-chatbot .tero-chatbot__progress {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--tero-chatbot-border);
}
#tero-chatbot .tero-chatbot__progress-bar {
  width: var(--progress, 0%);
  height: 100%;
  border-radius: inherit;
  background:
    linear-gradient(
      90deg,
      var(--tero-chatbot-red),
      var(--tero-chatbot-red-dark));
  transition: width .18s ease;
}
#tero-chatbot .tero-chatbot__form {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
#tero-chatbot .tero-chatbot__input,
#tero-chatbot .tero-chatbot__select {
  width: 100%;
  min-height: 46px;
  padding: 11px 13px;
  border: 1px solid #d7d7d7;
  border-radius: 10px;
  background: #fff;
  color: var(--tero-chatbot-text);
  font: inherit;
  box-shadow: inset 0 1px 2px rgba(27, 31, 38, .04);
}
#tero-chatbot .tero-chatbot__input:focus,
#tero-chatbot .tero-chatbot__select:focus,
#tero-chatbot .tero-chatbot__button:focus-visible {
  border-color: var(--tero-chatbot-red);
  outline: 3px solid color-mix(in srgb, var(--tero-ci-red) 18%, transparent);
  outline-offset: 2px;
}
#tero-chatbot .tero-chatbot__choice-row {
  display: flex;
  gap: 12px;
}
#tero-chatbot .tero-chatbot__choice-row .tero-chatbot__button {
  flex: 1 1 0;
}
#tero-chatbot .tero-chatbot__fade {
  opacity: 0;
  transition: opacity .3s ease;
}
#tero-chatbot .tero-chatbot__fade--visible {
  opacity: 1;
}
@keyframes tero-chatbot-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (max-width: 780px) {
  .tero-job-application {
    width: 92%;
    margin-top: 32px;
  }
  .tero-job-application-hero h1 {
    font-size: 26px;
  }
  .tero-job-application-grid {
    grid-template-columns: 1fr;
  }
  .tero-job-application-field--full {
    grid-column: auto;
  }
  .tero-job-application-actionlinks a {
    display: block;
    margin: 8px 0;
  }
  #tero-chatbot {
    width: 100%;
    margin-top: 22px;
  }
  #tero-chatbot .tero-chatbot__panel {
    padding: 20px;
    border-radius: 10px;
  }
  #tero-chatbot .tero-chatbot__title {
    font-size: 22px;
  }
  #tero-chatbot .tero-chatbot__choice-row {
    flex-direction: column;
  }
}

/* Resources/Public/Css/jobs/02-application-form-design.css */
.tero-job-application {
  width: 92%;
  max-width: 1180px;
  overflow: visible;
}
.tero-job-application-hero,
.tero-job-application-form,
.tero-job-application-success,
.tero-job-application-missing {
  max-width: 1120px;
}
.tero-job-application-hero {
  margin-bottom: 26px;
  overflow: visible;
}
.tero-job-application-jobline {
  position: relative;
  display: inline-block;
  width: fit-content;
  margin: 56px 0 20px;
  color: var(--tero-ci-red);
  font: 700 20px/1.25 var(--font-head);
  letter-spacing: .06em;
  line-height: 1.25;
  isolation: isolate;
  overflow: visible;
}
.tero-job-application-jobline::before,
.tero-job-application-jobline::after {
  content: "";
  position: absolute;
  z-index: -1;
  background: var(--tero-grey, #f1f2f4);
  pointer-events: none;
}
.tero-job-application-jobline::before {
  top: 0;
  left: 0;
  width: 70px;
  height: 70px;
  transform: translate(-112px, -50px);
}
.tero-job-application-jobline::after {
  top: 0;
  left: 0;
  width: 40px;
  height: 40px;
  transform: translate(-48px, -8px);
}
.tero-job-application-form {
  padding: 34px;
  border: 1px solid rgba(38, 38, 38, .10);
  border-radius: 10px;
  background:
    linear-gradient(
      180deg,
      #fff 0%,
      #f7f7f8 52%,
      #fff 100%);
  box-shadow: 0 28px 70px rgba(0, 0, 0, .11);
}
.tero-job-application-form fieldset {
  margin: 0;
  padding: 24px 0 28px;
  border: 0;
}
.tero-job-application-form fieldset:first-of-type {
  border-top: 0;
  padding-top: 0;
}
.tero-job-application-form legend {
  margin-bottom: 20px;
  color: #252525;
  font-size: 21px;
  font-weight: 800;
}
.tero-job-application-grid {
  gap: 18px;
}
.tero-job-application-form label {
  color: #2d2d2d;
  font-size: 14px;
  font-weight: 800;
}
.tero-job-application-form input,
.tero-job-application-form select,
.tero-job-application-form textarea {
  min-height: 50px;
  border: 1px solid rgba(38, 38, 38, .14);
  border-radius: 7px;
  background: #fff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .85), 0 5px 14px rgba(0, 0, 0, .04);
  color: #262626;
  padding: 13px 14px;
  transition:
    border-color .18s ease,
    box-shadow .18s ease,
    background-color .18s ease;
}
.tero-job-application-form textarea {
  min-height: 132px;
  resize: vertical;
}
.tero-job-application-form input:focus,
.tero-job-application-form select:focus,
.tero-job-application-form textarea:focus {
  border-color: var(--tero-ci-red);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--tero-ci-red) 14%, transparent), 0 8px 18px rgba(0, 0, 0, .05);
  background: #fff;
  outline: 0;
}
.tero-job-application-required-note {
  margin: 0;
  padding: 13px 15px;
  border: 0;
  border-left: 4px solid rgba(38, 38, 38, .20);
  border-radius: 7px;
  background: rgba(38, 38, 38, .045);
  color: #5f5f5f;
  font-size: 13px;
  font-weight: 700;
}
.tero-job-application-field .tero-job-application-required-note {
  padding: 0;
  border: 0;
  background: transparent;
  color: #737373;
  font-size: 13px;
  font-weight: 600;
}
.tero-job-application-dropzone {
  min-height: 132px;
  padding: 22px;
  border: 2px dashed rgba(38, 38, 38, .20);
  border-radius: 9px;
  background:
    linear-gradient(
      180deg,
      #fff,
      #f6f6f7);
  gap: 8px;
}
.tero-job-application-dropzone > .tero-job-application-filebutton {
  order: 1;
}
.tero-job-application-dropzone > span {
  order: 2;
  color: #777;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
}
.tero-job-application-dropzone > span::before {
  content: "\2013  ";
}
.tero-job-application-dropzone > span::after {
  content: " \2013";
}
.tero-job-application-dropzone > p {
  order: 3;
  margin: 0;
  color: #666;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
}
.tero-job-application-dropzone.is-dragover,
.tero-job-application-dropzone.is-invalid {
  border-color: #b81834;
  background: #fff7f8;
}
.tero-job-application-form .tero-job-application-filebutton {
  border: 0;
  border-radius: 8px;
  background-image: var(--tero-button-gradient);
  background-size: 200% auto;
  color: #fff;
  font-weight: 900;
  box-shadow: 0 10px 24px color-mix(in srgb, var(--tero-ci-red) 12%, transparent);
  transition:
    background-position .35s ease,
    box-shadow .2s ease,
    transform .12s ease,
    filter .2s ease;
}
.tero-job-application-form .tero-job-application-filebutton:visited,
.tero-job-application-form .tero-job-application-filebutton:hover,
.tero-job-application-form .tero-job-application-filebutton:focus,
.tero-job-application-form .tero-job-application-filebutton:focus-visible,
.tero-job-application-form .tero-job-application-filebutton:active {
  color: #fff;
}
.tero-job-application-form .tero-job-application-filebutton:hover,
.tero-job-application-form .tero-job-application-filebutton:focus-visible {
  background-position: right center;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--tero-ci-red) 16%, transparent);
  filter: brightness(1.03);
}
.tero-job-application-form .tero-job-application-filebutton:active {
  transform: scale(.98);
}
.tero-job-application-form .tero-job-application-privacy {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 26px;
  padding: 18px;
  border: 1px solid rgba(38, 38, 38, .10);
  border-radius: 9px;
  background: #fff;
  line-height: 1.5;
}
.tero-job-application-form .tero-job-application-privacy input[type=checkbox] {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  min-height: 18px;
  margin: 0;
  padding: 0;
  accent-color: var(--tero-ci-red);
}
.tero-job-application-privacy span {
  display: block;
  min-width: 0;
}
.tero-job-application-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 24px;
  text-align: center;
}
.tero-job-application-actions .button,
.tero-job-application .button {
  min-height: 52px;
  border-radius: 8px;
}
.tero-job-application-actions .button {
  min-width: 250px;
  padding: 15px 30px;
  border: 0;
  background-image: var(--tero-button-gradient);
  background-size: 200% auto;
  box-shadow: 0 12px 28px color-mix(in srgb, var(--tero-ci-red) 14%, transparent);
  color: #fff;
  font-weight: 900;
  text-align: center;
  text-transform: uppercase;
  transition:
    background-position .35s ease,
    box-shadow .2s ease,
    transform .12s ease,
    filter .2s ease;
}
.tero-job-application-actions .button:not(:disabled):hover,
.tero-job-application-actions .button:not(:disabled):focus-visible {
  background-position: right center;
  box-shadow: 0 16px 34px color-mix(in srgb, var(--tero-ci-red) 18%, transparent);
  filter: brightness(1.03);
}
.tero-job-application-actions .button:not(:disabled):active {
  transform: scale(.98);
}
.tero-job-application #tero-chatbot .tero-chatbot__button {
  min-height: 52px;
  border-radius: 8px;
  font-family: var(--font-head);
  font-weight: 900;
  transition:
    background-position .35s ease,
    box-shadow .2s ease,
    transform .12s ease,
    filter .2s ease,
    border-color .2s ease,
    color .2s ease;
}
.tero-job-application #tero-chatbot .tero-chatbot__button--primary {
  border: 0;
  background-color: var(--tero-button-color-start);
  background-image:
    linear-gradient(
      120deg,
      var(--tero-button-color-end) 0%,
      var(--tero-button-color-start) 36%,
      var(--tero-button-color-middle) 50%,
      var(--tero-button-color-start) 64%,
      var(--tero-button-color-end) 100%);
  background-size: 220% 100%;
  background-position: 0 50%;
  color: #fff;
  box-shadow: 0 12px 24px color-mix(in srgb, var(--tero-ci-red) 24%, transparent);
}
.tero-job-application #tero-chatbot .tero-chatbot__button--primary:hover,
.tero-job-application #tero-chatbot .tero-chatbot__button--primary:focus-visible {
  background-position: 100% 50%;
  color: #fff;
  box-shadow: 0 16px 30px color-mix(in srgb, var(--tero-ci-red) 32%, transparent);
  filter: brightness(1.03);
  transform: translateY(-1px);
}
.tero-job-application #tero-chatbot .tero-chatbot__button--choice,
.tero-job-application #tero-chatbot .tero-chatbot__button--back,
.tero-job-application #tero-chatbot .tero-chatbot__button[data-action=skip-question] {
  background: #fff !important;
  border-color: rgba(38, 38, 38, .18) !important;
  color: #262626 !important;
}
.tero-job-application #tero-chatbot .tero-chatbot__button--choice:hover,
.tero-job-application #tero-chatbot .tero-chatbot__button--choice:focus-visible,
.tero-job-application #tero-chatbot .tero-chatbot__button--back:hover,
.tero-job-application #tero-chatbot .tero-chatbot__button--back:focus-visible,
.tero-job-application #tero-chatbot .tero-chatbot__button[data-action=skip-question]:hover,
.tero-job-application #tero-chatbot .tero-chatbot__button[data-action=skip-question]:focus-visible {
  border-color: var(--tero-button-color-start) !important;
  color: var(--tero-button-color-start) !important;
  box-shadow: 0 10px 22px color-mix(in srgb, var(--tero-ci-red) 14%, transparent);
}
.tero-job-application-actionlinks {
  margin-top: 16px;
  text-align: center;
}
@media (max-width: 780px) {
  .tero-job-application {
    width: 92%;
  }
  .tero-job-application-form {
    padding: 22px 16px;
    border-radius: 8px;
  }
  .tero-job-application-form fieldset {
    padding: 22px 0;
  }
  .tero-job-application-jobline {
    margin: 36px 0 16px;
    font-size: 18px;
  }
  .tero-job-application-jobline::before {
    top: 0;
    left: 0;
    width: 46px;
    height: 46px;
    transform: translate(-60px, -30px);
  }
  .tero-job-application-jobline::after {
    top: 0;
    left: 0;
    width: 28px;
    height: 28px;
    transform: translate(-28px, -4px);
  }
  .tero-job-application-actions {
    align-items: stretch;
    text-align: center;
  }
  .tero-job-application-actions .button {
    width: 100%;
    min-width: 0;
  }
}
.tero-job-application-form fieldset:last-of-type {
  padding-bottom: 0;
}
.tero-job-application-form .tero-job-application-upload-note {
  margin-bottom: 0;
}
.tero-job-application-form .tero-job-application-privacy {
  margin-top: 20px;
  margin-bottom: 0;
}
.tero-job-application-actions {
  padding-top: 24px;
}
.tero-job-application-actions .button[data-application-submit] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
  height: 52px;
  min-height: 52px;
  padding: 0 30px;
  box-sizing: border-box;
}
.tero-job-application-actions .button[data-application-submit]::after {
  content: none !important;
  display: none !important;
}

/* Resources/Public/Css/content-elements/form-embed-alignment.css */
.tero-form-embed-form {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
@media (prefers-reduced-motion: reduce) {
  .tero-form-collapse.is-enhanced .tero-form-collapse__content,
  .tero-form-collapse__icon::before,
  .tero-form-collapse__icon::after {
    transition: none;
  }
}
.tero-form-embed-form {
  width: 92%;
  max-width: 1120px;
  margin: 0 auto;
  padding: 34px;
  border: 1px solid rgba(38, 38, 38, .10);
  border-radius: 10px;
  background:
    linear-gradient(
      180deg,
      #fff 0%,
      #f7f7f8 52%,
      #fff 100%);
  box-shadow: 0 28px 70px rgba(0, 0, 0, .11);
  color: #262626;
}
.tero-form-embed-form .powermail_fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}
.tero-form-embed-form .powermail_legend {
  margin: 0 0 20px;
  color: #252525;
  font-size: 21px;
  font-weight: 800;
}
.tero-form-embed-form .powermail_fieldwrap {
  min-width: 0;
}
.tx-powermail .tero-form-embed-form .powermail_fieldwrap + .powermail_fieldwrap {
  margin-top: 20px;
}
.tero-form-embed-form .powermail_label {
  display: block;
  margin-bottom: 7px;
  color: #2d2d2d;
  font-size: 14px;
  font-weight: 800;
}
.tero-form-embed-form input.powermail_input,
.tero-form-embed-form textarea.powermail_textarea,
.tero-form-embed-form select.powermail_select {
  width: 100%;
  min-height: 50px;
  border: 1px solid rgba(38, 38, 38, .14);
  border-radius: 7px;
  background: #fff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .85), 0 5px 14px rgba(0, 0, 0, .04);
  color: #262626;
  padding: 13px 14px;
  font-size: 15px;
  transition:
    border-color .18s ease,
    box-shadow .18s ease,
    background-color .18s ease;
}
.tero-form-embed-form textarea.powermail_textarea {
  min-height: 132px;
  resize: vertical;
}
.tero-form-embed-form input.powermail_input:focus,
.tero-form-embed-form textarea.powermail_textarea:focus,
.tero-form-embed-form select.powermail_select:focus {
  border-color: var(--tero-ci-red);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--tero-ci-red) 14%, transparent), 0 8px 18px rgba(0, 0, 0, .05);
  background: #fff;
  outline: 0;
}
.tero-form-embed-form .powermail_fieldwrap_phone_note .powermail_field,
.tero-form-embed-form .powermail_fieldwrap_pflichtfelder .powermail_field {
  color: #5f5f5f;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
}
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted .powermail_field {
  padding: 18px;
  border: 1px solid rgba(38, 38, 38, .10);
  border-radius: 9px;
  background: #fff;
}
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted .checkbox,
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted .radio {
  margin: 0;
}
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted .checkbox label,
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted .radio label {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 0;
  color: #2d2d2d;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
}
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted input.powermail_checkbox,
.tero-form-embed-form .powermail_fieldwrap_privacy_accepted input.powermail_radio {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  min-height: 18px;
  margin: .18em 0 0;
  padding: 0;
  accent-color: var(--tero-ci-red);
}
.tero-form-embed-form .tero-form-upload-dropzone {
  min-height: 132px;
  padding: 22px;
  border: 2px dashed rgba(38, 38, 38, .20);
  border-radius: 9px;
  background:
    linear-gradient(
      180deg,
      #fff,
      #f6f6f7);
}
.tero-form-embed-form .tero-job-application-filebutton {
  border: 0;
  border-radius: 8px;
  background-image: var(--tero-button-gradient);
  background-size: 200% auto;
  color: #fff;
  font-weight: 900;
  box-shadow: 0 10px 24px color-mix(in srgb, var(--tero-ci-red) 12%, transparent);
  transition:
    background-position .35s ease,
    box-shadow .2s ease,
    transform .12s ease,
    filter .2s ease;
}
.tero-form-embed-form .tero-job-application-filebutton:hover,
.tero-form-embed-form .tero-job-application-filebutton:focus,
.tero-form-embed-form .tero-job-application-filebutton:focus-visible,
.tero-form-embed-form .tero-job-application-filebutton:active {
  color: #fff;
}
.tero-form-embed-form .tero-job-application-filebutton:hover,
.tero-form-embed-form .tero-job-application-filebutton:focus-visible {
  background-position: right center;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--tero-ci-red) 16%, transparent);
  filter: brightness(1.03);
}
.tero-form-embed-form .tero-job-application-filebutton:active {
  transform: scale(.98);
}
.tero-form-embed-form .powermail_fieldwrap_type_submit {
  margin-top: 26px;
  text-align: center;
}
.tero-form-embed-form input.tero-form-submit {
  min-width: 250px;
  min-height: 52px;
  padding: 15px 30px;
  border: 0;
  border-radius: 8px;
  background-image: var(--tero-button-gradient);
  background-size: 200% auto;
  box-shadow: 0 12px 28px color-mix(in srgb, var(--tero-ci-red) 14%, transparent);
  color: #fff;
  font-weight: 900;
  text-align: center;
  text-transform: uppercase;
  transition:
    background-position .35s ease,
    box-shadow .2s ease,
    transform .12s ease,
    filter .2s ease;
}
.tero-form-embed-form input.tero-form-submit:not(:disabled):hover,
.tero-form-embed-form input.tero-form-submit:not(:disabled):focus-visible {
  background-position: right center;
  box-shadow: 0 16px 34px color-mix(in srgb, var(--tero-ci-red) 18%, transparent);
  filter: brightness(1.03);
}
.tero-form-embed-form input.tero-form-submit:not(:disabled):active {
  transform: scale(.98);
}
@media (max-width: 780px) {
  .tero-form-embed-form {
    width: 92%;
    padding: 22px 16px;
    border-radius: 8px;
  }
  .tero-form-embed-form input.tero-form-submit {
    width: 100%;
    min-width: 0;
  }
}
.tero-booking-embed__body {
  padding-left: 0;
  padding-right: 0;
  height: 1762px;
  overflow: hidden;
}
.tero-booking-embed__iframe {
  display: block;
  width: 100%;
  max-width: none;
  height: 1800px;
  min-height: 1800px;
  margin: 0;
  border: 0;
  background: #fff;
  transform: scale(1.14);
  transform-origin: top center;
}

/* Resources/Public/Css/jobs/03-upload-validation-feedback.css */
.tero-upload-error {
  display: none;
  margin-top: 10px;
  color: #b81834;
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.4;
}
.tero-upload-error[aria-hidden=false] {
  display: block;
}

/* Resources/Public/Css/jobs/04-unified-upload.css */
.tero-form-upload-dropzone {
  border: 2px dashed #d6d6d6;
  border-radius: 14px;
  padding: 20px;
  text-align: center;
  background: #fff;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.tero-form-upload-dropzone.is-dragover,
.tero-form-upload-dropzone.is-invalid {
  border-color: #b81834;
  background: rgba(184, 24, 52, 0.05);
}
.tero-form-upload-dropzone input[type=file] {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
}
.tero-form-upload-note {
  margin-top: 10px;
  font-size: 0.95rem;
  line-height: 1.4;
}
.tero-form-upload-filelist {
  margin-top: 12px;
  padding-left: 18px;
  font-size: 0.95rem;
  line-height: 1.5;
}
.tero-form-upload-filelist,
.tero-job-application-filelist {
  width: 100%;
  margin-top: 14px;
  padding-left: 0;
  list-style: none;
}
.tero-upload-filelist__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  padding: 8px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.tero-upload-filelist__name {
  min-width: 0;
  overflow-wrap: anywhere;
}
.tero-upload-filelist__remove {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #d60b2f;
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}
.tero-upload-filelist__remove:hover,
.tero-upload-filelist__remove:focus {
  background: rgba(214, 11, 47, 0.08);
  outline: none;
}
.tero-upload-filelist__item {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 32px;
  align-items: center;
  column-gap: 16px;
}
.tero-upload-filelist__remove {
  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: end;
  width: 32px;
  height: 32px;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
  color: #d60b2f;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  appearance: none;
  -webkit-appearance: none;
}
.tero-upload-filelist__remove:hover,
.tero-upload-filelist__remove:focus,
.tero-upload-filelist__remove:active {
  background: transparent !important;
  box-shadow: none !important;
  outline: none;
}
.tero-upload-filelist__name {
  min-width: 0;
}

/* Resources/Public/Css/content-elements/form-row-layout.css */
.tero-form-row {
  display: grid;
  gap: 20px;
  margin-top: 20px;
}
.tero-form-row--two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.tero-form-row .powermail_fieldwrap {
  min-width: 0;
}
.tx-powermail .tero-form-row .powermail_fieldwrap + .powermail_fieldwrap {
  margin-top: 0;
}
.tero-form-field {
  min-width: 0;
}
.tero-form-salutation-line {
  display: flex;
  align-items: center;
  gap: 16px;
}
.tero-form-salutation-line .powermail_label {
  margin: 0;
  line-height: 1.2;
}
.tero-form-salutation-line .powermail_field {
  display: flex;
  align-items: center;
  gap: 16px;
}
.tero-form-salutation-line > .powermail_label {
  display: block;
  margin-bottom: 7px;
  color: #2d2d2d;
  font-size: 14px;
  font-weight: 800;
}
.tero-form-salutation-line .radio {
  margin: 0;
}
.tero-form-salutation-line .radio label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 0;
  line-height: 1.2;
  font-size: 14px;
  font-weight: 400;
  color: inherit;
}
.tero-form-salutation-line input[type=radio] {
  margin: 0;
  width: 24px;
  height: 24px;
  min-width: 24px;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 50%;
  box-shadow: none;
}
.tero-form-salutation-line .tero-form-error {
  margin-left: 12px;
}
@media (max-width: 700px) {
  .tero-form-row--two {
    grid-template-columns: 1fr;
  }
  .tero-form-salutation-line {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }
  .tero-form-salutation-line .powermail_field {
    flex-wrap: wrap;
  }
}

/* Resources/Public/Css/jobs/05-job-contact-box.css */
.tero-job-contact-box {
  margin: 36px 0;
}
.tero-job-contact-box__inner {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 1rem;
}
.tero-job-contact-box__headline {
  margin: 0 0 16px;
  font-size: clamp(1.55rem, 2vw, 2.1rem);
  line-height: 1.15;
}
.tero-job-contact-box [hidden] {
  display: none !important;
}
.tero-job-contact-box__card,
.tero-job-contact-box__message {
  border: 1px solid rgba(23, 42, 58, 0.14);
  border-radius: 8px;
  background: var(--tero-grey);
  box-shadow: 0 14px 34px rgba(23, 42, 58, 0.08);
}
.tero-job-contact-box__card {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(260px, 1fr) 140px;
  gap: 24px;
  align-items: center;
  padding: 28px;
}
.tero-job-contact-box__card.has-contact-image {
  grid-template-columns: 170px minmax(260px, 1fr) minmax(260px, 1fr) 140px;
}
.tero-job-contact-box__message {
  padding: 18px 20px;
  color: #4a5560;
}
.tero-job-contact-box__media {
  position: relative;
  width: 160px;
  height: 160px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  overflow: hidden;
  background: transparent;
}
.tero-job-contact-box__placeholder {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: transparent;
}
.tero-job-contact-box__image {
  --tero-contact-image-scale: 1;
  --tero-contact-image-translate-y: 0px;
  --tero-contact-image-object-position: center center;
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: calc(100% - 14px);
  height: calc(100% - 14px);
  border-radius: 50%;
  object-fit: cover;
  object-position: var(--tero-contact-image-object-position);
  transform: translate(-50%, calc(-50% + var(--tero-contact-image-translate-y))) scale(var(--tero-contact-image-scale));
  transform-origin: center center;
}
.tero-job-contact-box__content,
.tero-job-contact-box__communication {
  min-width: 0;
  align-self: center;
}
.tero-job-contact-box__communication {
  padding-top: 2px;
}
.tero-job-contact-box__eyebrow,
.tero-job-contact-box__company,
.tero-job-contact-box__person,
.tero-job-contact-box__address {
  margin: 0 0 8px;
}
.tero-job-contact-box__eyebrow {
  color: var(--tero-ci-red);
  font-weight: 700;
}
.tero-job-contact-box__company {
  font-weight: 700;
  font-size: 1.12rem;
}
.tero-job-contact-box__person {
  color: #243341;
}
.tero-job-contact-box__address {
  font-style: normal;
  color: #4a5560;
  line-height: 1.5;
}
.tero-job-contact-box__links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 14px;
}
.tero-job-contact-box__links li {
  display: grid;
  gap: 2px;
  line-height: 1.45;
}
.tero-job-contact-box__links strong {
  display: block;
  color: #243341;
}
.tero-job-contact-box__links a {
  color: var(--tero-ci-red);
  text-decoration: none;
  font-weight: 700;
}
.tero-job-contact-box__links a:hover,
.tero-job-contact-box__links a:focus {
  text-decoration: underline;
}
.tero-job-contact-box__qr {
  justify-self: center;
  align-self: center;
  text-align: center;
}
.tero-job-contact-box__qr img {
  display: block;
  width: 120px;
  height: 120px;
  object-fit: contain;
  border-radius: 6px;
  background: #fff;
  border: 1px solid rgba(23, 42, 58, 0.12);
}
@media (max-width: 980px) {
  .tero-job-contact-box__card,
  .tero-job-contact-box__card.has-contact-image {
    grid-template-columns: 160px minmax(220px, 1fr) minmax(220px, 1fr);
  }
  .tero-job-contact-box__qr {
    grid-column: 2 / -1;
    justify-self: start;
  }
}
@media (max-width: 760px) {
  .tero-job-contact-box__card,
  .tero-job-contact-box__card.has-contact-image {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 24px;
    text-align: center;
  }
  .tero-job-contact-box__media,
  .tero-job-contact-box__qr {
    justify-content: center;
    justify-self: center;
  }
  .tero-job-contact-box__content,
  .tero-job-contact-box__communication {
    justify-self: stretch;
  }
  .tero-job-contact-box__links {
    display: inline-grid;
    justify-content: center;
    text-align: left;
  }
  .tero-job-contact-box__media {
    width: 150px;
    height: 150px;
  }
  .tero-job-contact-box__image {
    width: calc(100% - 14px);
    height: calc(100% - 14px);
  }
}
.tero-job-contact-box__company {
  color: var(--tero-ci-red);
  font-weight: 800;
  margin-top: -0.15rem;
  margin-bottom: 0.35rem;
}
.tero-job-contact-box {
  margin-bottom: 45px !important;
}
.tero-job-contact-box__inner {
  margin-bottom: 45px !important;
}
.tero-job-contact-box__card,
.tero-job-contact-box__card.has-contact-image {
  background: #fff !important;
  border: 0 !important;
  box-shadow: 0 18px 44px rgba(27, 31, 38, .08) !important;
  border-radius: 18px !important;
}
.tero-job-contact-box__media {
  background: #f7f7f8 !important;
  border: 0 !important;
  box-shadow: none !important;
}
.tero-job-contact-box__qr {
  background: #fff !important;
  border: 0 !important;
  box-shadow: 0 8px 22px rgba(27, 31, 38, .07) !important;
  border-radius: 14px !important;
}
.tero-job-contact-box__card,
.tero-job-contact-box__card.has-contact-image {
  border: 1px solid color-mix(in srgb, var(--tero-ci-red) 18%, transparent) !important;
  box-shadow: 0 18px 44px rgba(27, 31, 38, .08) !important;
}
.tero-job-contact-box__media {
  box-sizing: border-box;
  overflow: hidden;
  border: 5px solid #fff !important;
  border-radius: 50%;
  background: #f2f3f4 !important;
  box-shadow: 0 16px 34px rgba(27, 31, 38, .18) !important;
}
.tero-job-contact-box__card.has-contact-image .tero-job-contact-box__media {
  background: transparent !important;
}
.tero-job-contact-box__image,
.tero-job-contact-box__placeholder {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border-radius: 50%;
}
.tero-job-contact-box__image {
  width: 100%;
  height: 100%;
}
.tero-job-contact-box__placeholder {
  background: #f2f3f4;
}

/* Resources/Public/Css/content-elements/flexible-text-base.css */
.tero-flexible-text {
  margin: 0;
}
.tero-flexible-text__inner {
  width: var(--tero-side);
  max-width: var(--tero-content);
  margin-right: auto;
  margin-left: auto;
  text-align: left;
}
.tero-flexible-text__roofline {
  display: inline-block;
  margin: 0 0 10px;
  color: var(--tero-ci-red);
  font-family: var(--font-head);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}
.tero-flexible-text__headline {
  max-width: 860px;
  margin: 0;
  color: #171717;
  font-family: var(--font-head);
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: 0;
}
.tero-flexible-text__intro {
  max-width: 860px;
  margin: 14px 0 0;
  color: #3f3f3f;
  font-family: var(--font-copy);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.65;
  text-align: left;
}
.tero-flexible-text__sections {
  display: grid;
  gap: 1.15rem;
  margin-top: 28px;
  text-align: left;
}
.tero-flexible-text__section {
  min-width: 0;
  color: #3f3f3f;
  font-family: var(--font-copy);
  font-size: 1rem;
  line-height: 1.65;
  text-align: left;
}
.tero-flexible-text__section-headline {
  margin: 0 0 0.6rem;
  font-size: clamp(1.2rem, 1.45vw, 1.55rem);
  line-height: 1.25;
}
.tero-flexible-text__section-body > :first-child {
  margin-top: 0;
}
.tero-flexible-text__section-body > :last-child {
  margin-bottom: 0;
}
.tero-flexible-text--layout-card .tero-flexible-text__inner,
.tero-flexible-text__section--style-contact {
  padding: 1.5rem;
  border: 1px solid rgba(23, 42, 58, 0.14);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(23, 42, 58, 0.08);
}
.tero-flexible-text--layout-muted .tero-flexible-text__inner,
.tero-flexible-text__section--style-note {
  padding: 1.5rem;
  background: var(--tero-grey, #f3f4f5);
}
.tero-flexible-text--layout-accent .tero-flexible-text__inner {
  padding: 1.5rem;
  border-left: 5px solid var(--tero-ci-red);
  background: color-mix(in srgb, var(--tero-ci-red) 6%, transparent);
}
.tero-flexible-text__section--style-intro {
  padding-top: 0.35rem;
}
.tero-flexible-text__section--style-heading {
  margin-bottom: 0.35rem;
}
.tero-flexible-text__section--style-note {
  border-left: 4px solid color-mix(in srgb, var(--tero-ci-red) 85%, transparent);
}
.tero-flexible-text__section--style-contact {
  background: var(--tero-grey, #f3f4f5);
}
.tero-flexible-text__section--space-before-small {
  margin-top: 0.75rem;
}
.tero-flexible-text__section--space-before-medium {
  margin-top: 1.5rem;
}
.tero-flexible-text__section--space-before-large {
  margin-top: 2.5rem;
}
.tero-flexible-text__section--space-after-small {
  margin-bottom: 0.75rem;
}
.tero-flexible-text__section--space-after-medium {
  margin-bottom: 1.5rem;
}
.tero-flexible-text__section--space-after-large {
  margin-bottom: 2.5rem;
}
@media (max-width: 760px) {
  .tero-flexible-text--layout-card .tero-flexible-text__inner,
  .tero-flexible-text--layout-muted .tero-flexible-text__inner,
  .tero-flexible-text--layout-accent .tero-flexible-text__inner,
  .tero-flexible-text__section--style-contact,
  .tero-flexible-text__section--style-note {
    padding: 1.15rem;
  }
}

/* Resources/Public/Css/content-elements/flexible-text-extended.css */
.tero-flexible-text--align-right .tero-flexible-text__inner,
.tero-flexible-text__section--align-right,
.tero-flexible-text__headline--align-right {
  text-align: right;
}
.tero-flexible-text__headline--align-left {
  text-align: left;
}
.tero-flexible-text__headline--align-center {
  text-align: center;
}
.tero-flexible-text__headline--style-large {
  font-size: clamp(2.05rem, 3vw, 3rem);
}
.tero-flexible-text__headline--style-statement {
  max-width: 13ch;
  font-size: clamp(2.3rem, 4vw, 4.2rem);
  line-height: 1.02;
  font-weight: 800;
}
.tero-flexible-text__headline--align-center.tero-flexible-text__headline--style-statement {
  margin-left: auto;
  margin-right: auto;
}
.tero-flexible-text__headline--align-right.tero-flexible-text__headline--style-statement {
  margin-left: auto;
}
.tero-flexible-text__headline--style-accent {
  padding-left: 0.8rem;
  border-left: 5px solid var(--tero-ci-red);
}
.tero-flexible-text__headline--style-muted {
  color: #5f6871;
  font-weight: 600;
}
.tero-flexible-text__headline--color-red,
.tero-flexible-text__section--color-red {
  color: var(--tero-ci-red);
}
.tero-flexible-text__headline--color-grey,
.tero-flexible-text__section--color-grey {
  color: #5f6871;
}
.tero-flexible-text__headline--color-white,
.tero-flexible-text__section--color-white {
  color: #fff;
}
.tero-flexible-text__section--font-headline {
  font-size: clamp(1.25rem, 1.7vw, 1.8rem);
  line-height: 1.35;
  font-weight: 700;
}
.tero-flexible-text__section--font-accent {
  font-size: 1.08rem;
  font-weight: 700;
  color: var(--tero-ci-red);
}
.tero-flexible-text__section--style-highlight {
  padding: 1.35rem 1.5rem;
  background: color-mix(in srgb, var(--tero-ci-red) 7%, transparent);
  border-left: 5px solid var(--tero-ci-red);
}
.tero-flexible-text__section--style-quote {
  position: relative;
  padding: 0.35rem 0 0.35rem 1.4rem;
  border-left: 4px solid var(--tero-ci-red);
}
.tero-flexible-text__section--style-info {
  padding: 1.15rem 1.25rem;
  border: 1px solid rgba(23, 42, 58, 0.14);
  background: rgba(23, 42, 58, 0.04);
}
.tero-flexible-text__section--style-divider {
  padding-top: 1.35rem;
  border-top: 1px solid rgba(23, 42, 58, 0.18);
}
@media (max-width: 760px) {
  .tero-flexible-text--align-right .tero-flexible-text__inner,
  .tero-flexible-text__section--align-right,
  .tero-flexible-text__headline--align-right {
    text-align: left;
  }
  .tero-flexible-text__headline--style-accent {
    padding-left: 0.65rem;
  }
}

/* Resources/Public/Css/content-elements/flexible-text-editor-comfort.css */
.tero-flexible-text__headline--size-small {
  font-size: clamp(1.35rem, 1.7vw, 1.75rem);
}
.tero-flexible-text__headline--size-medium {
  font-size: clamp(1.7rem, 2.2vw, 2.35rem);
}
.tero-flexible-text__headline--size-large {
  font-size: clamp(2.05rem, 3vw, 3rem);
}
.tero-flexible-text__headline--size-xlarge {
  font-size: clamp(2.35rem, 4vw, 4rem);
  line-height: 1.08;
}
.tero-flexible-text__headline--size-statement {
  max-width: 13ch;
  font-size: clamp(2.6rem, 5vw, 5.2rem);
  line-height: 1;
  font-weight: 800;
}
.tero-flexible-text__headline > :first-child {
  margin-top: 0;
}
.tero-flexible-text__headline > :last-child {
  margin-bottom: 0;
}
.tero-flexible-text__section--size-small {
  font-size: 0.94rem;
}
.tero-flexible-text__section--size-medium {
  font-size: 1.08rem;
}
.tero-flexible-text__section--size-large {
  font-size: 1.2rem;
  line-height: 1.6;
}

/* Resources/Public/Css/content-elements/flexible-text-separated-controls.css */
.tero-flexible-text-section__headline--color-default,
.tero-flexible-text-section__body--color-default {
  color: inherit;
}
.tero-flexible-text-section__headline {
  margin: 0 0 0.6rem;
  font-size: clamp(1.2rem, 1.45vw, 1.55rem);
  line-height: 1.25;
}
.tero-flexible-text-section__body {
  color: #3f3f3f;
  font-family: var(--font-copy);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.65;
  text-align: left;
}
.tero-flexible-text-section__headline--align-left,
.tero-flexible-text-section__body--align-left {
  text-align: left;
}
.tero-flexible-text-section__headline--align-center,
.tero-flexible-text-section__body--align-center {
  text-align: center;
}
.tero-flexible-text-section__headline--align-right,
.tero-flexible-text-section__body--align-right {
  text-align: right;
}
.tero-flexible-text-section__headline--color-red,
.tero-flexible-text-section__body--color-red {
  color: var(--tero-ci-red);
}
.tero-flexible-text-section__headline--color-grey,
.tero-flexible-text-section__body--color-grey {
  color: #5f6871;
}
.tero-flexible-text-section__headline--color-white,
.tero-flexible-text-section__body--color-white {
  color: #fff;
}
.tero-flexible-text-section__headline--font-strong {
  font-weight: 800;
}
.tero-flexible-text-section__headline--font-accent {
  font-weight: 800;
}
.tero-flexible-text-section__headline--font-muted {
  font-weight: 600;
}
.tero-flexible-text-section__headline--size-small {
  font-size: 1.05rem;
}
.tero-flexible-text-section__headline--size-medium {
  font-size: clamp(1.25rem, 1.6vw, 1.65rem);
}
.tero-flexible-text-section__headline--size-large {
  font-size: clamp(1.55rem, 2.2vw, 2.25rem);
}
.tero-flexible-text-section__headline--size-xlarge {
  font-size: clamp(1.95rem, 3vw, 3rem);
  line-height: 1.12;
}
.tero-flexible-text-section__body > :first-child {
  margin-top: 0;
}
.tero-flexible-text-section__body > :last-child {
  margin-bottom: 0;
}
.tero-flexible-text-section__body--font-headline {
  font-size: clamp(1.25rem, 1.7vw, 1.8rem);
  line-height: 1.35;
  font-weight: 700;
}
.tero-flexible-text-section__body--font-accent {
  font-size: 1.08rem;
  font-weight: 700;
}
.tero-flexible-text-section__body--size-small {
  font-size: 0.94rem;
}
.tero-flexible-text-section__body--size-medium {
  font-size: 1.08rem;
}
.tero-flexible-text-section__body--size-large {
  font-size: 1.2rem;
  line-height: 1.6;
}
@media (max-width: 760px) {
  .tero-flexible-text-section__headline--align-right,
  .tero-flexible-text-section__body--align-right {
    text-align: left;
  }
}
.tero-flexible-text__section--body-align-left .tero-flexible-text-section__headline--align-inherit {
  text-align: left;
}
.tero-flexible-text__section--body-align-center .tero-flexible-text-section__headline--align-inherit {
  text-align: center;
}
.tero-flexible-text__section--body-align-right .tero-flexible-text-section__headline--align-inherit {
  text-align: right;
}
@media (max-width: 760px) {
  .tero-flexible-text__section--body-align-right .tero-flexible-text-section__headline--align-inherit {
    text-align: left;
  }
}

/* Resources/Public/Css/content-elements/legal-text.css */
.tero-legal-text {
  overflow: visible;
}
.tero-legal-text > .inner {
  overflow: visible;
}
.tero-legal-text p {
  margin-top: 0;
  margin-bottom: .55rem;
  line-height: 1.58;
}
.tero-legal-text p + p {
  margin-top: .15rem;
}
.tero-legal-text p:has(> strong:first-child) {
  margin-top: .85rem;
  margin-bottom: .25rem;
}
.tero-legal-text p:has(> strong:first-child) + p {
  margin-top: 0;
}
.tero-legal-text p > br:first-child {
  display: none;
}
.tero-legal-text ul,
.tero-legal-text ol {
  margin-top: .35rem;
  margin-bottom: .8rem;
  padding-left: 1.45rem;
}
.tero-legal-text li {
  margin-bottom: .25rem;
  line-height: 1.55;
}
.tero-legal-text li > p {
  margin-bottom: .25rem;
}
.tero-legal-text .roofline,
.tero-legal-text p[class*=roofline] {
  margin-top: 2.15rem;
  margin-bottom: .85rem;
  line-height: 1.25;
}
.tero-legal-text .roofline:first-child,
.tero-legal-text p[class*=roofline]:first-child {
  margin-top: 0;
}
.tero-legal-text .roofline + p,
.tero-legal-text p[class*=roofline] + p {
  margin-top: 0;
}
@media (max-width: 760px) {
  .tero-legal-text p {
    margin-bottom: .5rem;
    line-height: 1.55;
  }
  .tero-legal-text .roofline,
  .tero-legal-text p[class*=roofline] {
    margin-top: 1.75rem;
    margin-bottom: .7rem;
  }
}

/* Resources/Public/Css/content-elements/dynamic-intro-tiles-layout.css */
.tero-dynamic-intro-tiles .tiles-top {
  margin-bottom: 36px;
}
.tero-dynamic-intro-tiles .tero-dynamic-intro-tiles__list {
  flex-wrap: nowrap;
  align-items: stretch;
  justify-content: center;
  gap: 14px;
}
.tero-dynamic-intro-tiles .tero-dynamic-intro-tiles__list .tile {
  flex: 1 1 0;
  min-width: 124px;
  min-height: 172px;
  margin: 0;
  padding: 24px 12px 22px;
  border: 1px solid color-mix(in srgb, var(--tero-ci-red) 12%, transparent);
  border-radius: 8px;
  background: #fefefe;
  box-shadow: 0 10px 22px rgba(23, 23, 23, .08);
  color: inherit;
  text-align: center;
  text-decoration: none;
  transition:
    transform .18s ease,
    box-shadow .18s ease,
    border-color .18s ease;
}
.tero-dynamic-intro-tiles .tero-dynamic-intro-tiles__list a.tile:hover,
.tero-dynamic-intro-tiles .tero-dynamic-intro-tiles__list a.tile:focus-visible {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--tero-ci-red) 38%, transparent);
  box-shadow: 0 14px 30px rgba(23, 23, 23, .12);
}
.tero-dynamic-intro-tiles .tero-dynamic-intro-tiles__list a.tile:focus-visible {
  outline: 2px solid var(--tero-ci-red);
  outline-offset: 4px;
}
.tero-dynamic-intro-tiles .tero-dynamic-intro-tiles__list .tile > .image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 104px;
  height: 104px;
  margin: 0 auto 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: hidden;
}
.tero-dynamic-intro-tiles .tero-dynamic-intro-tiles__list .tile > .image img {
  display: block;
  width: 104px;
  height: 104px;
  max-width: 104px;
  max-height: 104px;
  background: transparent;
  object-fit: contain;
}
.tero-dynamic-intro-tiles .tero-dynamic-intro-tiles__list .tile .like-h6 {
  margin: auto 0 0;
  min-height: 2.56em;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  font-size: clamp(15px, .92vw, 17px);
  line-height: 1.28;
  word-break: normal;
  overflow-wrap: normal;
}

/* Resources/Public/Css/content-elements/faq-topic-buttons.css */
.tero-faq-topic-buttons .tero-faq-topic-buttons__inner {
  width: 100%;
}
.tero-faq-topic-buttons .tero-faq-topic-buttons__roofline,
.tero-faq-topic-buttons .tero-faq-topic-buttons__headline,
.tero-faq-topic-buttons .tero-faq-topic-buttons__intro {
  margin-bottom: 20px;
}
.tero-faq-topic-buttons .tero-faq-topic-buttons__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 32px;
}
.tero-faq-topic-buttons .tero-faq-topic-buttons__button {
  display: flex;
  align-items: center;
  gap: 18px;
  min-height: 96px;
  padding: 16px 22px;
  border: 1px solid rgba(184, 24, 52, .16);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(23, 23, 23, .07);
  color: inherit;
  text-decoration: none;
  transition:
    border-color .18s ease,
    box-shadow .18s ease,
    transform .18s ease;
}
.tero-faq-topic-buttons a.tero-faq-topic-buttons__button:hover {
  transform: translateY(-2px);
  border-color: rgba(184, 24, 52, .34);
  box-shadow: 0 11px 24px rgba(23, 23, 23, .1);
}
.tero-faq-topic-buttons a.tero-faq-topic-buttons__button:focus-visible {
  outline: 2px solid #b81834;
  outline-offset: 4px;
}
.tero-faq-topic-buttons .tero-faq-topic-buttons__icon {
  display: flex;
  flex: 0 0 64px;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
}
.tero-faq-topic-buttons .tero-faq-topic-buttons__icon img {
  display: block;
  width: 64px;
  height: 64px;
  object-fit: contain;
}
.tero-faq-topic-buttons .tero-faq-topic-buttons__label {
  font-size: clamp(16px, 1.15vw, 20px);
  font-weight: 600;
  line-height: 1.3;
}
@media (max-width: 767px) {
  .tero-faq-topic-buttons .tero-faq-topic-buttons__list {
    grid-template-columns: minmax(0, 1fr);
  }
  .tero-faq-topic-buttons .tero-faq-topic-buttons__button {
    min-height: 84px;
    padding: 12px 16px;
  }
}

/* Resources/Public/Css/content-elements/intro-tiles-5-actions.css */
.tero-intro-tiles-5__text {
  max-width: 860px;
}
.tero-intro-tiles-5__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem;
  margin-top: 1.8rem;
}
.tero-intro-tiles-5__actions .button {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.12);
  font-weight: 700;
  justify-content: center;
  line-height: 1.2;
  min-height: 46px;
  padding: 0.85rem 1.35rem;
  text-decoration: none;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease;
}
.tero-intro-tiles-5__actions .button:hover,
.tero-intro-tiles-5__actions .button:focus-visible {
  transform: translateY(-1px);
}
.tero-intro-tiles-5__actions .button.outline {
  background: transparent;
  border: 1px solid var(--tero-button-color-start);
  color: var(--tero-button-color-start);
}
.tero-intro-tiles-5__actions .button.outline:hover,
.tero-intro-tiles-5__actions .button.outline:focus-visible {
  background: var(--tero-button-color-end);
  border-color: var(--tero-button-color-end);
  color: #fff;
}
.tero-intro-tiles-5__actions .button.button--text {
  background: transparent;
  border: 0;
  box-shadow: none;
  color: var(--tero-button-color-start);
  min-height: 0;
  padding: 0.25rem 0;
}
.tero-intro-tiles-5__actions .button.button--text:hover,
.tero-intro-tiles-5__actions .button.button--text:focus-visible {
  color: var(--tero-button-color-end);
}
@media (max-width: 640px) {
  .tero-intro-tiles-5__actions {
    align-items: stretch;
    flex-direction: column;
  }
  .tero-intro-tiles-5__button:not(.tero-intro-tiles-5__button--text) {
    width: 100%;
  }
}

/* Resources/Public/Css/content-elements/dynamic-intro-tiles-responsive.css */
@media (max-width: 1180px) {
  .tero-dynamic-intro-tiles .tero-dynamic-intro-tiles__list {
    justify-content: flex-start;
    overflow-x: auto;
    padding: 0 4px 14px;
    scroll-snap-type: x proximity;
  }
  .tero-dynamic-intro-tiles .tero-dynamic-intro-tiles__list .tile {
    flex: 0 0 148px;
    scroll-snap-align: start;
  }
}
@media (max-width: 767px) {
  .tero-dynamic-intro-tiles .tiles-top {
    margin-bottom: 32px;
  }
  .tero-dynamic-intro-tiles .tero-dynamic-intro-tiles__list {
    gap: 12px;
  }
  .tero-dynamic-intro-tiles .tero-dynamic-intro-tiles__list .tile {
    flex-basis: 142px;
    min-height: 160px;
    padding: 18px 10px 18px;
  }
  .tero-dynamic-intro-tiles .tero-dynamic-intro-tiles__list .tile > .image {
    width: 84px;
    height: 84px;
    margin-bottom: 0;
  }
  .tero-dynamic-intro-tiles .tero-dynamic-intro-tiles__list .tile > .image img {
    width: 84px;
    height: 84px;
    max-width: 84px;
    max-height: 84px;
  }
}

/* Resources/Public/Css/content-elements/intro-tiles-5-alignment.css */
.tero-intro-tiles-5 > .inner {
  width: var(--tero-side);
  max-width: var(--tero-content);
  margin-inline: auto;
}
.tero-intro-tiles-5 .tiles-top {
  display: block;
}
.tero-intro-tiles-5 .tiles-top-left {
  max-width: 920px;
}
.tero-intro-tiles-5 .text p:has(> .button) {
  margin-top: 24px;
}

/* Resources/Public/Css/content-elements/dynamic-timeline.css */
.dynamic-timeline {
  display: grid;
  gap: 32px;
  max-width: 100%;
  padding: 40px 0;
}
.dynamic-timeline-header {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}
.dynamic-timeline-header .text {
  margin-top: 16px;
}
.dynamic-timeline-meta {
  box-sizing: border-box;
  width: min(100%, 920px);
  max-width: 920px;
  margin-inline: auto;
  padding: 32px;
  background: var(--tero-white);
  border: 1px solid var(--tero-grey-border);
  border-radius: 16px;
  box-shadow: var(--tero-shadow);
  display: grid;
  grid-template-rows: 34px 96px;
  align-content: center;
  justify-items: center;
  row-gap: 26px;
  min-height: 230px;
  height: 230px;
  overflow: hidden;
  text-align: center;
}
.dynamic-timeline-meta > * {
  box-sizing: border-box;
}
.dynamic-timeline-year {
  align-self: center;
  margin-bottom: 0;
  color: var(--tero-ci-red);
  font-size: .95rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-align: center;
  text-transform: uppercase;
}
.dynamic-timeline-title {
  width: min(100%, 760px);
  max-width: 760px;
  align-self: start;
  margin: 0 auto;
  color: var(--tero-heading);
  font-size: 1.68rem;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
}
.dynamic-timeline-description {
  display: none;
  width: min(100%, 760px);
  max-width: 760px;
  margin: 0 auto;
  color: var(--tero-text);
  line-height: 1.75;
  text-align: center;
  overflow-wrap: anywhere;
}
.dynamic-timeline-track-wrapper {
  max-width: 100%;
  overflow: visible;
  padding: 22px 8px 38px;
}
.dynamic-timeline-track {
  position: relative;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  align-items: center;
  width: 100%;
  min-width: 0;
  padding: 0 8px;
}
.dynamic-timeline-rail {
  position: absolute;
  z-index: 0;
  top: 50%;
  left: 32px;
  right: 32px;
  height: 3px;
  border-radius: 999px;
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb, var(--tero-ci-red) 18%, transparent),
      color-mix(in srgb, var(--tero-ci-red) 42%, transparent),
      color-mix(in srgb, var(--tero-ci-red) 18%, transparent));
  transform: translateY(-50%);
  pointer-events: none;
}
.dynamic-timeline-point {
  position: relative;
  z-index: 1;
  justify-self: center;
  display: grid;
  place-items: center;
  width: 100%;
  max-width: 92px;
  height: 48px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  overflow: visible;
  background: transparent;
  color: var(--tero-heading);
  font-size: .78rem;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
}
.dynamic-timeline-point-visual {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 0;
  display: block;
  width: 30px;
  height: 30px;
  border: 2px solid var(--tero-grey-border);
  border-radius: 999px;
  box-sizing: border-box;
  overflow: hidden;
  background: var(--tero-white);
  box-shadow: 0 6px 14px rgba(0, 0, 0, .07);
  transform: translate(-50%, -50%);
  transform-origin: center;
  transition:
    width .24s ease,
    height .24s ease,
    border-color .2s ease,
    border-width .2s ease,
    background-position .35s ease,
    box-shadow .2s ease,
    filter .2s ease;
}
.dynamic-timeline-point-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-sizing: border-box;
  width: auto;
  height: auto;
  background:
    radial-gradient(
      circle at 32% 22%,
      rgba(255, 255, 255, .55) 0,
      rgba(255, 255, 255, .28) 30%,
      rgba(255, 255, 255, 0) 58%),
    linear-gradient(
      180deg,
      rgba(255, 255, 255, .22),
      rgba(255, 255, 255, 0) 62%);
  opacity: .32;
  pointer-events: none;
}
.dynamic-timeline-point::before,
.dynamic-timeline-point::after {
  content: none;
  display: none;
}
.dynamic-timeline-point:hover .dynamic-timeline-point-visual,
.dynamic-timeline-point:focus-visible .dynamic-timeline-point-visual,
.dynamic-timeline-point.active .dynamic-timeline-point-visual {
  width: min(84px, calc(100% - 8px));
  height: 34px;
  border-color: transparent;
  border-width: 0;
  background:
    linear-gradient(
      45deg,
      var(--tero-ci-red) 0%,
      var(--tero-ci-red-element-faded) 52%,
      var(--tero-ci-red) 100%);
  background-position: left center;
  background-size: 200% auto;
  box-shadow: 0 12px 28px color-mix(in srgb, var(--tero-ci-red) 18%, transparent), 0 5px 14px rgba(0, 0, 0, .08);
}
.dynamic-timeline-point:hover .dynamic-timeline-point-visual,
.dynamic-timeline-point:focus-visible .dynamic-timeline-point-visual {
  background-position: right center;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--tero-ci-red) 20%, transparent), 0 6px 16px rgba(0, 0, 0, .08);
  filter: brightness(1.03);
}
.dynamic-timeline-point:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--tero-ci-red) 32%, transparent);
  outline-offset: 4px;
}
.dynamic-timeline-point.active {
  color: #fff;
}
.dynamic-timeline-point-label {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  line-height: 1;
  text-align: center;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity .18s ease,
    color .18s ease,
    visibility 0s linear .18s;
}
.dynamic-timeline-point:hover .dynamic-timeline-point-label,
.dynamic-timeline-point:focus-visible .dynamic-timeline-point-label,
.dynamic-timeline-point.active .dynamic-timeline-point-label {
  width: min(84px, calc(100% - 8px));
  height: 34px;
  border-radius: 999px;
  background-color: var(--tero-ci-red);
  color: #fff;
  opacity: 1;
  visibility: visible;
  transition-delay: 0s;
}
@media (max-width: 820px) {
  .dynamic-timeline {
    gap: 24px;
    padding: 24px 0;
  }
  .dynamic-timeline-meta {
    grid-template-rows: 32px 92px;
    row-gap: 22px;
    min-height: 215px;
    height: 215px;
    padding: 24px;
  }
  .dynamic-timeline-title {
    font-size: 1.45rem;
  }
  .dynamic-timeline-track-wrapper {
    overflow-x: auto;
    overflow-y: hidden;
    padding: 14px 2px 18px;
  }
  .dynamic-timeline-track {
    grid-auto-columns: minmax(76px, 1fr);
    min-width: max-content;
    padding: 0 4px;
  }
  .dynamic-timeline-rail {
    left: 28px;
    right: 28px;
  }
  .dynamic-timeline-point {
    width: 84px;
    max-width: none;
    height: 46px;
    font-size: .74rem;
  }
  .dynamic-timeline-point:hover .dynamic-timeline-point-visual,
  .dynamic-timeline-point:focus-visible .dynamic-timeline-point-visual,
  .dynamic-timeline-point.active .dynamic-timeline-point-visual {
    width: 76px;
  }
}
@media (max-width: 560px) {
  .dynamic-timeline-meta {
    grid-template-rows: 30px 90px;
    row-gap: 18px;
    width: 100%;
    min-height: 205px;
    height: 205px;
    padding: 20px;
  }
  .dynamic-timeline-title {
    font-size: 1.32rem;
  }
  .dynamic-timeline-track {
    grid-auto-columns: minmax(76px, 1fr);
    min-width: max-content;
  }
  .dynamic-timeline-rail {
    left: 26px;
    right: 26px;
  }
  .dynamic-timeline-point {
    width: 76px;
    height: 44px;
    font-size: .7rem;
  }
  .dynamic-timeline-point-visual {
    width: 26px;
    height: 26px;
  }
  .dynamic-timeline-point:hover .dynamic-timeline-point-visual,
  .dynamic-timeline-point:focus-visible .dynamic-timeline-point-visual,
  .dynamic-timeline-point.active .dynamic-timeline-point-visual {
    width: 68px;
    height: 32px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .dynamic-timeline-point,
  .dynamic-timeline-point::before,
  .dynamic-timeline-point::after,
  .dynamic-timeline-point-visual,
  .dynamic-timeline-point-visual::after,
  .dynamic-timeline-track {
    transition: none;
  }
}
#c198.frame,
#c198.frame-greybox,
#c198.frame-layout-20 {
  background: transparent !important;
  box-shadow: none !important;
}
#c198 {
  padding-top: clamp(32px, 4vw, 56px) !important;
  padding-bottom: clamp(32px, 4vw, 56px) !important;
}
#c198 > .inner {
  box-sizing: border-box !important;
  width: min(calc(100% - 48px), 1160px) !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
#c198 .dynamic-timeline {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: clamp(32px, 4vw, 48px) !important;
  border: 1px solid color-mix(in srgb, var(--tero-ci-red) 28%, transparent) !important;
  border-radius: 28px !important;
  background:
    linear-gradient(
      135deg,
      #ffffff 0%,
      #f7f7f8 100%) !important;
  box-shadow: 0 18px 44px rgba(27, 31, 38, .08) !important;
}
#c198 .dynamic-timeline-header {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}
#c198 .dynamic-timeline-header h1,
#c198 .dynamic-timeline-header h2,
#c198 .dynamic-timeline-header h3,
#c198 .dynamic-timeline-header .headline,
#c198 .dynamic-timeline-header .text {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}
@media (max-width: 720px) {
  #c198 > .inner {
    width: min(calc(100% - 28px), 1160px) !important;
  }
  #c198 .dynamic-timeline {
    padding: 22px !important;
    border-radius: 22px !important;
  }
}
#c198 .dynamic-timeline {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
#c198.frame,
#c198.frame-greybox,
#c198.frame-layout-20 {
  background: transparent !important;
  box-shadow: none !important;
}
#c198 > .inner {
  box-sizing: border-box !important;
  width: min(1160px, calc(100% - 48px)) !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
#c198 .dynamic-timeline {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
#c198 .dynamic-timeline-header {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}
#c198 .dynamic-timeline-header h1,
#c198 .dynamic-timeline-header h2,
#c198 .dynamic-timeline-header h3,
#c198 .dynamic-timeline-header .headline,
#c198 .dynamic-timeline-header .text,
#c198 .dynamic-timeline-header p {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}
@media (max-width: 720px) {
  #c198 > .inner,
  #c518.tero-text-info-card .tero-text-info-card__inner {
    width: min(1160px, calc(100% - 28px)) !important;
  }
}

/* Resources/Public/Css/content-elements/intro-tiles-5-buttons.css */
.tero-intro-tiles-5__content .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 22px;
  border-radius: 999px;
  background-image: var(--tero-button-gradient);
  background-size: 220% 100%;
  background-position: 0 50%;
  box-shadow: 0 12px 28px color-mix(in srgb, var(--tero-ci-red) 14%, transparent);
  transition:
    background-position .35s ease,
    box-shadow .2s ease,
    transform .12s ease,
    filter .2s ease;
}
.tero-intro-tiles-5__content .button::after {
  flex: 0 0 auto;
}
.tero-intro-tiles-5__content .button:hover,
.tero-intro-tiles-5__content .button:focus-visible {
  background-position: 100% 50%;
  box-shadow: 0 16px 34px color-mix(in srgb, var(--tero-ci-red) 18%, transparent);
  filter: saturate(1.05);
  transform: translateY(-1px);
}
.tero-intro-tiles-5__content .button:active {
  transform: translateY(0);
}
.tero-intro-tiles-5__content > .button {
  display: flex;
  width: fit-content;
  max-width: 100%;
  margin-top: 12px;
  margin-bottom: 0;
  white-space: normal;
}
.tero-intro-tiles-5__content > .button + .button {
  margin-top: 10px;
}
.tero-intro-tiles-5__content > .button + .tero-intro-tiles-5__text,
.tero-intro-tiles-5__content > .tero-intro-tiles-5__text + .button {
  margin-top: 16px;
}
#c160 .tero-intro-tiles-5__content > .button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20rem;
  max-width: 100%;
  text-align: center;
  box-sizing: border-box;
}
#c160 .tero-intro-tiles-5__content > .button + .button {
  margin-top: 1rem;
}
#c160 .tero-intro-tiles-5__content {
  display: grid;
  justify-items: start;
}
#c160 .tero-intro-tiles-5__content > .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  white-space: nowrap;
  text-align: center;
}
#c160 .tero-intro-tiles-5__content > .button {
  grid-column: 1;
}
#c160 .tero-intro-tiles-5__content > .button + .button {
  margin-top: 1rem;
}
#c160 .tero-intro-tiles-5__content > .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24rem;
  max-width: 100%;
  box-sizing: border-box;
  white-space: nowrap;
  text-align: center;
}
#c160 .tero-intro-tiles-5__content > .button + .button {
  margin-top: 1rem;
}
#c215 .tero-intro-tiles-5__content > .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24rem;
  max-width: 100%;
  box-sizing: border-box;
  white-space: nowrap;
  text-align: center;
}
#c215 .tero-intro-tiles-5__content > .button + .button {
  margin-top: 1rem;
}

/* Resources/Public/Css/locations/00-overview.css */
.tero-locations-overview {
  color: #171717;
  padding: clamp(56px, 7vw, 104px) 20px;
}
.tero-locations-overview__inner {
  max-width: 1180px;
  margin: 0 auto;
}
.tero-locations-overview__intro {
  max-width: 780px;
  margin: 0 0 clamp(34px, 5vw, 58px);
  text-align: left;
}
.tero-locations-overview__intro-left {
  width: 100%;
  text-align: left;
}
.tero-locations-overview__eyebrow {
  margin: 0 0 12px;
  color: var(--tero-ci-red);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}
.tero-locations-overview__headline {
  margin: 0 0 18px;
  color: #111111;
  font-size: clamp(2rem, 4vw, 4.3rem);
  line-height: 1.05;
}
.tero-locations-overview__text {
  color: #4b4b4b;
  font-size: clamp(1rem, 1.2vw, 1.15rem);
  line-height: 1.65;
  text-align: left;
}
.tero-locations-overview__text p:last-child {
  margin-bottom: 0;
}
.tero-locations-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.tero-location-card {
  display: grid;
  min-height: 164px;
  grid-template-columns: minmax(0, 1fr) 112px;
  gap: 18px;
  align-items: stretch;
  border: 1px solid rgba(23, 23, 23, 0.08);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(23, 23, 23, 0.07);
  color: #171717;
  padding: 18px;
  text-decoration: none;
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}
.tero-location-card--no-image {
  grid-template-columns: minmax(0, 1fr);
}
.tero-location-card__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: space-between;
}
.tero-location-card__media {
  align-self: stretch;
  overflow: hidden;
  border-radius: 12px;
  background: #f2f3f4;
}
.tero-location-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.tero-location-card:hover,
.tero-location-card:focus-visible {
  border-color: color-mix(in srgb, var(--tero-ci-red) 34%, transparent);
  box-shadow: 0 20px 44px rgba(23, 23, 23, 0.11);
  transform: translateY(-3px);
}
.tero-location-card__eyebrow {
  color: var(--tero-ci-red);
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}
.tero-location-card__title {
  display: block;
  margin: 14px 0 20px;
  color: #111111;
  font-size: clamp(1.35rem, 1.9vw, 1.85rem);
  font-weight: 800;
  line-height: 1.1;
}
.tero-location-card__link {
  color: var(--tero-ci-red);
  font-weight: 800;
}
@media (max-width: 900px) {
  .tero-locations-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .tero-locations-overview {
    padding: 44px 16px;
  }
  .tero-locations-cards {
    grid-template-columns: 1fr;
  }
  .tero-location-card {
    min-height: 146px;
    grid-template-columns: minmax(0, 1fr) 104px;
  }
  .tero-location-card--no-image {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Resources/Public/Css/locations/01-detail-pages.css */
.tero-location-detail,
.tero-location-team {
  padding: clamp(42px, 6vw, 84px) 20px;
}
.tero-location-detail__inner,
.tero-location-team__inner {
  max-width: 1180px;
  margin: 0 auto;
}
.tero-location-detail__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, .85fr);
  gap: clamp(20px, 3vw, 34px);
  align-items: stretch;
}
.tero-location-detail__image-card,
.tero-location-detail__contact-card,
.tero-location-team-card {
  overflow: hidden;
  border: 1px solid rgba(23, 23, 23, .08);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(23, 23, 23, .08);
}
.tero-location-detail__image-card {
  min-height: clamp(340px, 44vw, 560px);
}
.tero-location-detail__image,
.tero-location-detail__placeholder {
  display: block;
  width: 100%;
  height: 100%;
  min-height: inherit;
}
.tero-location-detail__image {
  object-fit: cover;
}
.tero-location-detail__placeholder {
  display: grid;
  place-items: center;
  background:
    linear-gradient(
      135deg,
      #f2f3f4 0%,
      #fff 52%,
      color-mix(in srgb, var(--tero-ci-red-element-faded) 12%, white) 100%);
  color: var(--tero-ci-red);
  font-size: clamp(2rem, 4vw, 4rem);
  font-weight: 900;
}
.tero-location-detail__contact-card {
  padding: clamp(24px, 3vw, 34px);
}
.tero-location-detail__eyebrow,
.tero-location-team__eyebrow {
  margin: 0 0 10px;
  color: var(--tero-ci-red);
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
}
.tero-location-detail h1,
.tero-location-team h2 {
  margin: 0 0 18px;
  color: #111;
  line-height: 1.08;
}
.tero-location-detail__intro {
  color: #4b4b4b;
  line-height: 1.65;
}
.tero-location-detail__facts {
  display: grid;
  gap: 16px;
  margin: 24px 0 0;
}
.tero-location-detail__facts div {
  padding-top: 16px;
  border-top: 1px solid rgba(23, 23, 23, .09);
}
.tero-location-detail__facts dt {
  margin-bottom: 5px;
  color: #6f6f6f;
  font-size: .82rem;
  font-weight: 800;
  text-transform: uppercase;
}
.tero-location-detail__facts dd {
  margin: 0;
  color: #171717;
  font-weight: 700;
  line-height: 1.5;
}
.tero-location-detail__facts a {
  color: var(--tero-ci-red);
}
.tero-location-team {
  padding-top: 0;
}
.tero-location-team__header {
  max-width: 680px;
  margin: 0 auto clamp(18px, 3vw, 28px);
  text-align: center;
}
.tero-location-team__grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
}
.tero-location-team-card {
  display: grid;
  flex: 0 1 calc(25% - 12px);
  grid-template-rows: auto 1fr;
  max-width: 300px;
  min-width: 230px;
  box-shadow: 0 14px 34px rgba(27, 31, 38, .08);
}
.tero-location-team-card__image-wrap {
  width: 100%;
  overflow: hidden;
  border-radius: 18px 18px 0 0;
  background: #f2f3f4;
}
.tero-location-team-card__image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: initial;
  object-position: initial;
  transform: none;
}
.tero-location-team-card__body {
  padding: 16px 18px 18px;
}
.tero-location-team-card h3 {
  margin: 0 0 5px;
  color: #111;
  font-size: 1.08rem;
}
.tero-location-team-card p {
  margin: 0;
  color: #565656;
  font-size: .95rem;
  line-height: 1.35;
}
.tero-location-team-card__languages {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 12px;
}
.tero-location-team-card__languages img {
  width: auto;
  max-height: 20px;
}
.tero-language-flag-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 20px;
  padding: 0 7px;
  border: 1px solid color-mix(in srgb, var(--tero-ci-red) 18%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--tero-ci-red-element-faded) 5%, white);
  color: var(--tero-ci-red);
  font-size: .72rem;
  font-weight: 800;
  line-height: 1;
}
.tero-team-group-new .tero-location-team-card__languages {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
  margin-top: 12px;
}
.tero-team-group-new .tero-location-team-card__languages img {
  width: auto;
  max-height: 18px;
  border-radius: 999px;
  box-shadow: 0 2px 8px rgba(27, 31, 38, .12);
}
.tero-team-group-new .tero-language-flag-badge {
  border-color: color-mix(in srgb, var(--tero-ci-red) 28%, transparent);
  background: #fff;
  color: var(--tero-ci-red);
}
@media (max-width: 900px) {
  .tero-location-detail__inner {
    grid-template-columns: 1fr;
  }
  .tero-location-team-card {
    flex-basis: calc(50% - 8px);
  }
}
@media (max-width: 640px) {
  .tero-location-detail,
  .tero-location-team {
    padding-right: 16px;
    padding-left: 16px;
  }
  .tero-location-team-card {
    flex-basis: 100%;
    width: min(100%, 340px);
  }
  .tero-location-detail__image-card,
  .tero-location-detail__contact-card,
  .tero-location-team-card {
    border-radius: 14px;
  }
}
@media (max-width: 460px) {
  .tero-location-card {
    grid-template-columns: 1fr;
  }
  .tero-location-card__media {
    min-height: 150px;
    order: -1;
  }
}

/* Resources/Public/Css/content-elements/applicant-tiles-base.css */
.tero-training-tiles-new,
.tero-info-tiles-3-new {
  position: relative;
}
.tero-training-tiles-new__inner,
.tero-info-tiles-3-new__inner {
  width: var(--tero-side);
  max-width: var(--tero-content);
  margin-right: auto;
  margin-left: auto;
}
.tero-training-tiles-new__header,
.tero-info-tiles-3-new__header {
  position: relative;
  max-width: 900px;
  margin: 0 auto 38px;
  text-align: center;
}
.tero-training-tiles-new__roofline,
.tero-info-tiles-3-new__roofline {
  margin: 0 0 12px;
  color: var(--tero-ci-red);
  font-family: var(--font-head);
  font-size: 1.18rem;
  font-weight: 800;
  line-height: 1.25;
}
.tero-training-tiles-new__headline,
.tero-info-tiles-3-new__headline {
  margin: 0;
  color: #171717;
  font-family: var(--font-head);
  font-size: 2.55rem;
  font-weight: 800;
  line-height: 1.08;
}
.tero-training-tiles-new__intro,
.tero-info-tiles-3-new__intro {
  max-width: 860px;
  margin: 18px auto 0;
  color: #3f3f3f;
  font-size: 1.08rem;
  line-height: 1.65;
}
.tero-training-tiles-new__intro > :last-child,
.tero-info-tiles-3-new__intro > :last-child,
.tero-training-tiles-new__bottom-text > :last-child,
.tero-info-tiles-3-new__bottom-text > :last-child,
.tero-info-tiles-3-new__text > :last-child {
  margin-bottom: 0;
}
.tero-training-tiles-new__grid,
.tero-info-tiles-3-new__grid {
  display: grid;
  align-items: stretch;
  width: 100%;
  margin: 0 auto;
  gap: 22px;
}
.tero-training-tiles-new__grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.tero-info-tiles-3-new__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.tero-training-tiles-new__card,
.tero-info-tiles-3-new__card {
  position: relative;
  display: flex;
  min-height: 132px;
  overflow: hidden;
  border: 1px solid rgba(23, 23, 23, 0.08);
  border-radius: 20px;
  background:
    linear-gradient(
      180deg,
      #fff 0%,
      #fbfbfb 100%);
  box-shadow: 0 14px 34px rgba(23, 23, 23, 0.07);
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    border-color 0.22s ease;
}
.tero-training-tiles-new__card {
  align-items: center;
  justify-content: center;
  padding: 28px 22px;
  text-align: center;
}
.tero-info-tiles-3-new__card {
  flex-direction: column;
  justify-content: flex-start;
  padding: 30px 28px;
}
.tero-training-tiles-new__card:hover,
.tero-training-tiles-new__card:focus-visible,
.tero-info-tiles-3-new__card:hover,
.tero-info-tiles-3-new__card:focus-visible,
.tero-info-tiles-3-new__card.is-active {
  border-color: color-mix(in srgb, var(--tero-ci-red) 28%, transparent);
  box-shadow: 0 22px 48px rgba(23, 23, 23, 0.12);
  transform: translateY(-5px);
}
.tero-training-tiles-new__title,
.tero-info-tiles-3-new__title {
  margin: 0;
  color: #171717;
  font-family: var(--font-head);
  font-size: 1.14rem;
  font-weight: 800;
  line-height: 1.28;
}
.tero-info-tiles-3-new__title {
  position: relative;
  z-index: 1;
  margin-bottom: 14px;
  font-size: 1.35rem;
}
.tero-info-tiles-3-new__text {
  position: relative;
  z-index: 1;
  color: #4a4a4a;
  font-size: 1rem;
  line-height: 1.6;
}
.tero-training-tiles-new__bottom-text,
.tero-info-tiles-3-new__bottom-text {
  max-width: 900px;
  margin: 34px auto 0;
  color: #3f3f3f;
  text-align: center;
}
.tero-info-tiles-3-new__actions {
  display: flex;
  justify-content: center;
  margin-top: 34px;
}
.tero-info-tiles-3-new__button {
  border-radius: 999px;
  background: var(--tero-button-gradient);
  background-size: 200% auto;
  box-shadow: 0 12px 26px color-mix(in srgb, var(--tero-ci-red) 28%, transparent);
  color: #fff;
  transition:
    background-position 0.22s ease,
    box-shadow 0.22s ease,
    transform 0.22s ease;
}
.tero-info-tiles-3-new__button:hover,
.tero-info-tiles-3-new__button:focus-visible {
  background-position: right center;
  box-shadow: 0 16px 34px color-mix(in srgb, var(--tero-ci-red) 34%, transparent);
  color: #fff;
  transform: translateY(-2px);
}
@media (prefers-reduced-motion: reduce) {
  .tero-training-tiles-new__card,
  .tero-info-tiles-3-new__card,
  .tero-info-tiles-3-new__card::after,
  .tero-info-tiles-3-new__button {
    transition: none;
  }
  .tero-training-tiles-new__card:hover,
  .tero-training-tiles-new__card:focus-visible,
  .tero-info-tiles-3-new__card:hover,
  .tero-info-tiles-3-new__card:focus-visible,
  .tero-info-tiles-3-new__card.is-active,
  .tero-info-tiles-3-new__button:hover,
  .tero-info-tiles-3-new__button:focus-visible {
    transform: none;
  }
}
@media (max-width: 980px) {
  .tero-training-tiles-new__grid,
  .tero-info-tiles-3-new__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .tero-training-tiles-new__headline,
  .tero-info-tiles-3-new__headline {
    font-size: 2.15rem;
  }
}
@media (max-width: 640px) {
  .tero-training-tiles-new__header,
  .tero-info-tiles-3-new__header {
    margin-bottom: 30px;
  }
  .tero-training-tiles-new__grid,
  .tero-info-tiles-3-new__grid {
    grid-template-columns: 1fr;
  }
  .tero-training-tiles-new__headline,
  .tero-info-tiles-3-new__headline {
    font-size: 1.85rem;
  }
  .tero-training-tiles-new__intro,
  .tero-info-tiles-3-new__intro {
    font-size: 1rem;
  }
  .tero-info-tiles-3-new__header::before,
  .tero-info-tiles-3-new__header::after {
    display: none;
  }
}

/* Resources/Public/Css/overrides/02-applicant-tiles-specific-adjustments.css */
.tero-training-tiles-new,
.tero-info-tiles-3-new {
  font-family: var(--font-copy);
}
.tero-training-tiles-new__roofline,
.tero-info-tiles-3-new__roofline {
  display: inline-block;
  margin: 0 0 14px;
  color: var(--tero-ci-red);
  font-family: var(--font-head);
  font-size: 1.12rem;
  font-weight: 800;
  line-height: 1.25;
}
.tero-training-tiles-new__headline,
.tero-info-tiles-3-new__headline {
  color: #171717;
  font-family: var(--font-head);
  font-weight: 800;
  letter-spacing: -0.02em;
}
.tero-training-tiles-new__intro,
.tero-training-tiles-new__bottom-text,
.tero-info-tiles-3-new__intro,
.tero-info-tiles-3-new__text,
.tero-info-tiles-3-new__bottom-text {
  font-family: var(--font-copy);
}
.tero-training-tiles-new__title,
.tero-info-tiles-3-new__title {
  font-family: var(--font-head);
}
.tero-info-tiles-3-new__inner {
  width: var(--tero-side);
  max-width: var(--tero-content);
}
.tero-info-tiles-3-new__grid {
  gap: 28px;
}
.tero-info-tiles-3-new__card {
  min-height: 260px;
}
.tero-info-tiles-3-new__card.is-active,
.tero-info-tiles-3-new__card:hover,
.tero-info-tiles-3-new__card:focus-visible {
  border-color: color-mix(in srgb, var(--tero-ci-red) 50%, transparent);
  box-shadow:
    0 26px 58px rgba(23, 23, 23, 0.18),
    0 0 0 4px color-mix(in srgb, var(--tero-ci-red) 10%, transparent),
    0 18px 42px color-mix(in srgb, var(--tero-ci-red) 22%, transparent);
}
.tero-training-tiles-new__header,
.tero-info-tiles-3-new__header {
  max-width: 860px;
  margin-right: auto;
  margin-bottom: 34px;
  margin-left: auto;
  text-align: center;
}
.tero-training-tiles-new__roofline,
.tero-info-tiles-3-new__roofline {
  margin: 0 0 10px;
  color: var(--tero-ci-red);
  font-family: var(--font-head);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}
.tero-training-tiles-new__headline,
.tero-info-tiles-3-new__headline {
  margin: 0;
  color: #171717;
  font-family: var(--font-head);
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -0.015em;
}
.tero-training-tiles-new__intro,
.tero-info-tiles-3-new__intro {
  max-width: 760px;
  margin: 14px auto 0;
  color: #3f3f3f;
  font-family: var(--font-copy);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.65;
}
.tero-training-tiles-new__intro strong,
.tero-info-tiles-3-new__intro strong {
  font-weight: 500;
}
.tero-training-tiles-new__bottom-text,
.tero-info-tiles-3-new__bottom-text {
  font-family: var(--font-copy);
  font-size: 0.98rem;
  font-weight: 400;
  line-height: 1.6;
}
.tero-training-tiles-new__header,
.tero-info-tiles-3-new__header {
  align-items: flex-start;
  width: 100%;
  max-width: none;
  margin-right: 0;
  margin-left: 0;
  text-align: left;
}
.tero-training-tiles-new__roofline,
.tero-training-tiles-new__headline,
.tero-training-tiles-new__intro,
.tero-training-tiles-new__bottom-text,
.tero-info-tiles-3-new__roofline,
.tero-info-tiles-3-new__headline,
.tero-info-tiles-3-new__intro,
.tero-info-tiles-3-new__bottom-text {
  margin-right: 0;
  margin-left: 0;
  text-align: left;
}
.tero-info-tiles-3-new__actions {
  justify-content: flex-start;
}

/* Resources/Public/Css/layout/03-footer-new.css */
.foot.foot-new .foot-bottom {
  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, .10) 0%,
      rgba(255, 255, 255, 0) 34%),
    linear-gradient(
      145deg,
      var(--tero-ci-red) 0%,
      var(--tero-ci-red-element-faded) 52%,
      var(--tero-ci-red) 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .20), inset 0 -18px 28px color-mix(in srgb, var(--tero-ci-red) 16%, transparent);
}
.foot.foot-new .foot-bottom .inner {
  padding-block: 34px 32px;
}
.foot.foot-new .foot-bottom .row:first-child {
  grid-template-columns: minmax(470px, 1.15fr) minmax(140px, auto) minmax(250px, auto) minmax(64px, .75fr);
  column-gap: 28px;
  align-items: center;
}
.foot.foot-new .foot-newsletter-cta {
  text-align: left;
}
.foot.foot-new .foot-bottom .row:first-child .col:nth-child(2) {
  text-align: center;
}
.foot.foot-new .foot-bottom .row:first-child > .col:last-child {
  grid-column: 4;
  justify-self: end;
  text-align: right;
}
.foot.foot-new .backtotop {
  width: 52px;
  height: 52px;
  margin-left: 0;
  border-radius: 14px;
  box-shadow: 0 12px 24px color-mix(in srgb, var(--tero-ci-red) 22%, transparent);
  transition:
    transform .2s ease,
    box-shadow .2s ease,
    background-color .2s ease;
}
.foot.foot-new .backtotop:hover {
  transform: translateY(-3px) rotate(-90deg);
  box-shadow: 0 16px 30px color-mix(in srgb, var(--tero-ci-red) 28%, transparent);
}
.foot.foot-new .backtotop:focus-visible {
  outline: 3px solid rgba(255, 255, 255, .78);
  outline-offset: 4px;
  box-shadow: 0 16px 30px color-mix(in srgb, var(--tero-ci-red) 30%, transparent);
}
.foot.foot-new .foot-newsletter-cta {
  text-align: center;
}
.foot.foot-new .foot-newsletter-cta__link {
  display: inline-flex;
  align-items: flex-end;
  justify-content: center;
  gap: 10px;
  color: #fff;
  text-decoration: none;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.foot.foot-new .foot-newsletter-cta__highlight {
  color: #fff;
  font-size: clamp(30px, 3vw, 42px);
  line-height: .78;
  transform: translateY(4px);
}
.foot.foot-new .foot-newsletter-cta__label {
  color: #fff;
  font-weight: 700;
  font-size: 11px;
  line-height: 1;
  letter-spacing: .12em;
  text-transform: uppercase;
  transform: translateY(-2px);
}
@media (max-width: 768px) {
  .foot.foot-new .foot-bottom .row:first-child {
    grid-template-columns: 1fr;
    row-gap: 18px;
    text-align: center;
  }
  .foot.foot-new .foot-bottom .row:first-child > .col:last-child {
    grid-column: 1;
    justify-self: center;
    text-align: center;
  }
  .foot.foot-new .backtotop {
    margin: 8px auto 0;
  }
  .foot.foot-new .foot-newsletter-cta__highlight {
    font-size: 38px;
  }
  .foot.foot-new .foot-newsletter-cta__link {
    gap: 8px;
  }
}
.foot.foot-new .foot-newsletter-cta {
  min-width: 0;
  max-width: 100%;
  justify-self: end;
  text-align: right;
  transform: none !important;
}
.foot.foot-new .foot-newsletter-cta__link {
  min-width: 0;
  max-width: 100%;
  flex-wrap: wrap;
  transform: none !important;
}
@media (max-width: 1199px) {
  .foot.foot-new .foot-bottom .row:first-child {
    grid-template-columns: 1fr;
    row-gap: 18px;
    text-align: center;
  }
  .foot.foot-new .foot-bottom .row:first-child > .col {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    justify-self: center;
    text-align: center;
  }
  .foot.foot-new .foot-newsletter-cta {
    justify-self: center;
    text-align: center;
  }
  .foot.foot-new .foot-bottom .row:first-child > .col:last-child {
    grid-column: 1;
    justify-self: center;
    text-align: center;
  }
  .foot.foot-new .backtotop {
    margin: 8px auto 0;
  }
}

/* Resources/Public/Css/content-elements/downloads.css */
.tero-downloads__pdf-preview {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 180px;
  border: 0;
  pointer-events: none;
  background: #fff;
}
.tero-downloads__preview {
  overflow: hidden;
}

/* Resources/Public/Css/locations/02-team-group.css */
.tero-location-team--vertical .tero-location-team__intro {
  max-width: 900px;
  margin: 18px auto 0;
  color: #4b5563;
  line-height: 1.7;
}
.tero-location-team--vertical .tero-location-team__list {
  display: grid;
  gap: clamp(20px, 3vw, 30px);
  max-width: 1120px;
  margin: clamp(30px, 5vw, 56px) auto 0;
}
.tero-location-team--vertical .tero-location-team__row {
  display: grid;
  grid-template-columns: minmax(280px, 320px) minmax(0, 1fr);
  gap: clamp(14px, 1.8vw, 22px);
  align-items: center;
  padding: clamp(18px, 2.4vw, 26px);
  border: 1px solid color-mix(in srgb, var(--tero-ci-red) 16%, transparent);
  border-radius: 28px;
  background:
    linear-gradient(
      135deg,
      #fff 0%,
      #fff 58%,
      #f7f7f8 100%);
  box-shadow: 0 18px 44px rgba(27, 31, 38, .11);
  transition:
    transform .2s ease,
    box-shadow .2s ease,
    border-color .2s ease;
}
.tero-location-team--vertical .tero-location-team__row:hover {
  transform: translateY(-4px);
  border-color: color-mix(in srgb, var(--tero-ci-red) 30%, transparent);
  box-shadow: 0 24px 54px rgba(27, 31, 38, .15);
}
.tero-location-team--vertical .tero-location-team-card {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
  justify-items: center;
  justify-self: start;
  align-items: start;
  width: min(100%, 320px);
  max-width: none;
  min-width: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.tero-location-team--vertical .tero-location-team-card__image-wrap {
  width: 224px;
  height: 224px;
  overflow: hidden;
  border: 5px solid #fff;
  border-radius: 50%;
  background: #f2f3f4;
  box-shadow: 0 16px 34px rgba(27, 31, 38, .18);
}
.tero-location-team--vertical .tero-location-team-card__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}
.tero-location-team--vertical .tero-location-team-card__body {
  width: fit-content;
  max-width: min(100%, 320px);
  min-width: 0;
  padding: 0;
  margin-inline: auto;
  justify-self: center;
  text-align: left;
}
.tero-location-team--vertical .tero-location-team-card__name-line {
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  width: fit-content;
  max-width: 100%;
  margin-bottom: 8px;
  white-space: nowrap;
}
.tero-location-team--vertical .tero-location-team-card h3 {
  flex: 0 0 auto;
  margin: 0;
  color: #171717;
  font-size: clamp(1.24rem, 1.6vw, 1.45rem);
  line-height: 1.12;
  white-space: nowrap;
}
.tero-location-team--vertical .tero-location-team-card__position {
  margin: 0;
  color: #4b5563;
  font-size: 1.02rem;
  font-weight: 600;
  line-height: 1.35;
  text-align: left;
}
.tero-location-team--vertical .tero-location-team-card__languages {
  display: inline-flex;
  flex: 0 0 auto;
  flex-wrap: nowrap;
  justify-content: flex-start;
  gap: 6px;
  margin: 0;
}
.tero-location-team--vertical .tero-location-team-card__languages img {
  width: auto;
  max-height: 18px;
  border-radius: 999px;
  box-shadow: 0 2px 8px rgba(27, 31, 38, .12);
}
.tero-location-team--vertical .tero-language-flag-badge {
  border-color: color-mix(in srgb, var(--tero-ci-red) 28%, transparent);
  background: #fff;
  color: var(--tero-ci-red);
}
.tero-location-team--vertical .tero-location-team__person-text {
  position: relative;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100%;
  padding: clamp(20px, 2.6vw, 28px) clamp(22px, 3vw, 34px);
  border-left: 4px solid var(--tero-ci-red);
  border-radius: 20px;
  background: rgba(255, 255, 255, .82);
  color: #374151;
  font-size: 1rem;
  line-height: 1.7;
}
.tero-location-team--vertical .tero-location-team__person-text p {
  position: relative;
  z-index: 1;
}
.tero-location-team--vertical .tero-location-team__person-text p:first-child,
.tero-location-team--vertical .tero-location-team__bottom-text p:first-child {
  margin-top: 0;
}
.tero-location-team--vertical .tero-location-team__person-text p:last-child,
.tero-location-team--vertical .tero-location-team__bottom-text p:last-child {
  margin-bottom: 0;
}
.tero-location-team--vertical .tero-location-team__bottom-text {
  max-width: 980px;
  margin: clamp(32px, 5vw, 58px) auto 0;
  color: #374151;
  font-size: 1rem;
  line-height: 1.75;
  text-align: center;
}
@media (max-width: 900px) {
  .tero-location-team--vertical .tero-location-team__row {
    grid-template-columns: 1fr;
  }
  .tero-location-team--vertical .tero-location-team-card {
    grid-template-columns: 1fr;
  }
  .tero-location-team--vertical .tero-location-team-card__name-line,
  .tero-location-team--vertical .tero-location-team-card__languages {
    flex-wrap: wrap;
  }
  .tero-location-team--vertical .tero-location-team-card h3 {
    white-space: normal;
  }
  .tero-location-team--vertical .tero-location-team-card__image-wrap {
    width: 168px;
    height: 168px;
  }
  .tero-location-team--vertical .tero-location-team__person-text {
    align-self: start;
    border-top: 1px solid color-mix(in srgb, var(--tero-ci-red) 16%, transparent);
    border-left: 0;
  }
}
@media (max-width: 520px) {
  .tero-location-team--vertical .tero-location-team__row {
    padding: 18px;
    border-radius: 20px;
  }
  .tero-location-team--vertical .tero-location-team-card {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
  }
  .tero-location-team--vertical .tero-location-team-card__image-wrap {
    width: 156px;
    height: 156px;
  }
  .tero-location-team--vertical .tero-location-team-card__name-line,
  .tero-location-team--vertical .tero-location-team-card__languages {
    justify-content: center;
  }
  .tero-location-team--vertical .tero-location-team__person-text {
    padding: 18px;
    text-align: left;
  }
}
#c209.tero-team-group-new .tero-location-team__header,
#c210.tero-team-group-new .tero-location-team__header {
  width: min(100%, 1120px);
  max-width: 1120px;
  margin-inline: auto;
  text-align: left;
}
#c209.tero-team-group-new .tero-location-team__eyebrow,
#c210.tero-team-group-new .tero-location-team__eyebrow,
#c209.tero-team-group-new .tero-location-team__headline,
#c210.tero-team-group-new .tero-location-team__headline,
#c209.tero-team-group-new .tero-location-team__intro,
#c210.tero-team-group-new .tero-location-team__intro {
  max-width: 100%;
  margin-left: 0;
  margin-right: auto;
  text-align: left;
  justify-content: flex-start;
}
#c209.tero-team-group-new .tero-location-team__header,
#c210.tero-team-group-new .tero-location-team__header {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}
#c209.tero-team-group-new .tero-location-team__eyebrow,
#c210.tero-team-group-new .tero-location-team__eyebrow,
#c209.tero-team-group-new .tero-location-team__headline,
#c210.tero-team-group-new .tero-location-team__headline {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
  justify-content: flex-start !important;
}

/* Resources/Public/Css/content-elements/flexible-hoverbar.css */
.tero-flexible-hoverbar {
  --tero-logo-step: clamp(150px, 20vw, 260px);
  width: var(--tero-side);
  max-width: var(--tero-content);
  margin-inline: auto;
  padding-block: clamp(32px, 5vw, 64px);
  overflow: hidden;
}
.tero-flexible-hoverbar--full {
  width: 100vw;
  max-width: none;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
.tero-flexible-hoverbar__inner {
  width: 100%;
  margin-inline: auto;
}
.tero-flexible-hoverbar--full .tero-flexible-hoverbar__heading,
.tero-flexible-hoverbar--full .tero-flexible-hoverbar__content {
  width: var(--tero-side);
  max-width: var(--tero-content);
  margin-inline: auto;
}
.tero-flexible-hoverbar__heading {
  margin: 0 0 clamp(28px, 4vw, 46px);
  text-align: center;
}
.tero-flexible-hoverbar__viewport {
  position: relative;
  overflow: hidden;
  width: 100%;
  border: 1px solid rgba(255, 255, 255, .48);
  border-radius: 22px;
  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, .18),
      rgba(247, 247, 248, .48),
      rgba(255, 255, 255, .18));
}
.tero-flexible-hoverbar__track {
  position: relative;
  height: clamp(130px, 17vw, 190px);
}
.tero-flexible-hoverbar__item {
  position: absolute;
  top: 50%;
  left: 50%;
  display: flex;
  width: clamp(118px, 15vw, 180px);
  height: clamp(88px, 11vw, 132px);
  align-items: center;
  justify-content: center;
  padding: 14px;
  border: 1px solid rgba(23, 23, 23, .08);
  border-radius: 16px;
  background: rgba(255, 255, 255, .68);
  box-shadow: 0 7px 18px rgba(27, 31, 38, .06);
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, -50%) scale(.78);
  transition:
    transform .65s ease,
    opacity .65s ease,
    box-shadow .65s ease,
    border-color .65s ease;
}
.tero-flexible-hoverbar__item.is-left-1 {
  opacity: .64;
  pointer-events: auto;
  transform: translate(calc(-50% - var(--tero-logo-step)), -50%) scale(.9);
}
.tero-flexible-hoverbar__item.is-left-2 {
  opacity: .4;
  pointer-events: auto;
  transform: translate(calc(-50% - var(--tero-logo-step) - var(--tero-logo-step)), -50%) scale(.82);
}
.tero-flexible-hoverbar__item.is-right-1 {
  opacity: .64;
  pointer-events: auto;
  transform: translate(calc(-50% + var(--tero-logo-step)), -50%) scale(.9);
}
.tero-flexible-hoverbar__item.is-right-2 {
  opacity: .4;
  pointer-events: auto;
  transform: translate(calc(-50% + var(--tero-logo-step) + var(--tero-logo-step)), -50%) scale(.82);
}
.tero-flexible-hoverbar__item.is-hidden {
  z-index: 0;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}
.tero-flexible-hoverbar__item.is-repositioning {
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .18s ease !important;
}
.tero-flexible-hoverbar__item.is-active,
.tero-flexible-hoverbar__item--active {
  z-index: 2;
  border-color: color-mix(in srgb, var(--tero-ci-red) 28%, transparent);
  box-shadow: 0 14px 32px rgba(27, 31, 38, .11);
  opacity: 1;
  pointer-events: auto;
  transform: translate(-50%, -50%) scale(1);
}
.tero-flexible-hoverbar__item:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--tero-ci-red) 45%, transparent);
  outline-offset: 4px;
}
.tero-flexible-hoverbar__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.tero-flexible-hoverbar__placeholder {
  color: #374151;
  font-family: var(--font-head);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
.tero-flexible-hoverbar__content {
  position: relative;
  min-height: var(--tero-flexible-hoverbar-panel-height, 150px);
  max-width: 760px;
  margin: clamp(24px, 4vw, 42px) auto 0;
  text-align: center;
}
.tero-flexible-hoverbar__panel {
  animation: tero-logo-text-panel-in .35s ease both;
}
.tero-flexible-hoverbar__panel--measure {
  position: absolute;
  top: 0;
  left: 0;
  display: block !important;
  visibility: hidden;
  width: 100%;
  animation: none;
  pointer-events: none;
}
.tero-flexible-hoverbar__panel[hidden] {
  display: none;
}
.tero-flexible-hoverbar__panel h3 {
  margin: 0 0 12px;
  color: #171717;
  font-size: clamp(1.35rem, 2vw, 1.75rem);
}
.tero-flexible-hoverbar__text {
  color: #4b5563;
  line-height: 1.7;
}
.tero-flexible-hoverbar__text > :first-child {
  margin-top: 0;
}
.tero-flexible-hoverbar__text > :last-child {
  margin-bottom: 0;
}
@keyframes tero-logo-text-panel-in {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 640px) {
  .tero-flexible-hoverbar {
    --tero-logo-step: 140px;
  }
  .tero-flexible-hoverbar__content {
    padding-inline: 16px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .tero-flexible-hoverbar__item,
  .tero-flexible-hoverbar__panel {
    animation: none;
    transition: none;
  }
}
#c128.tero-flexible-hoverbar {
  padding-bottom: 32px !important;
}
@media (max-width: 720px) {
  #c128.tero-flexible-hoverbar {
    padding-bottom: 24px !important;
  }
}

/* Resources/Public/Css/jobs/06-career-jobs.css */
.tero-career-jobs__section {
  padding: clamp(46px, 7vw, 88px) 0 clamp(42px, 6vw, 72px);
}
.tero-career-jobs__inner {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 clamp(18px, 4vw, 32px);
}
.tero-career-jobs__intro {
  max-width: 760px;
  margin: 0 0 clamp(34px, 5vw, 54px);
}
.tero-career-jobs__roofline {
  margin: 0 0 12px;
  color: var(--tero-ci-red);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .24em;
  line-height: 1.2;
  text-transform: uppercase;
}
.tero-career-jobs__headline {
  margin: 0 0 18px;
  font-size: clamp(32px, 4vw, 52px);
  line-height: 1.05;
}
.tero-career-jobs__bodytext {
  max-width: 720px;
}
.tero-career-jobs__bodytext > :first-child {
  margin-top: 0;
}
.tero-career-jobs__bodytext > :last-child {
  margin-bottom: 0;
}
.tero-career-jobs__results {
  width: 100%;
}
.tero-career-jobs__list {
  display: grid;
  gap: 22px;
}
.tero-career-jobs__card-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(22px, 4vw, 46px);
}
.tero-career-jobs__card-main {
  min-width: 0;
}
.tero-career-jobs__card-action {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.tero-career-jobs__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 24px;
  border-radius: 999px;
  background: var(--tero-ci-red);
  color: #fff;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
  box-shadow: 0 12px 26px color-mix(in srgb, var(--tero-ci-red) 22%, transparent);
}
.tero-career-jobs__bottom-text {
  width: 100%;
  margin-top: clamp(28px, 4vw, 42px);
  padding: clamp(24px, 4vw, 34px);
  border: 1px solid rgba(17, 24, 39, .08);
  border-left: 4px solid var(--tero-ci-red);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(17, 24, 39, .06);
  color: #2b2f36;
  font-size: 17px;
  line-height: 1.65;
}
.tero-career-jobs__bottom-text > :first-child {
  margin-top: 0;
}
.tero-career-jobs__bottom-text > :last-child {
  margin-bottom: 0;
}
.tero-career-jobs__bottom-text p {
  margin: 0 0 1em;
}
.tero-career-jobs__bottom-text a {
  color: var(--tero-ci-red);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.tero-career-jobs__empty {
  max-width: 760px;
  padding: clamp(28px, 5vw, 46px);
  border: 1px solid rgba(17, 24, 39, .08);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 18px 45px rgba(17, 24, 39, .08);
}
.tero-career-jobs__empty h3 {
  margin-top: 0;
}
.tero-career-jobs__empty .button {
  margin-top: 18px;
}
@media (max-width: 760px) {
  .tero-career-jobs__card-link {
    align-items: flex-start;
    flex-direction: column;
  }
  .tero-career-jobs__card-action {
    justify-content: flex-start;
  }
}
.tero-career-jobs .tero-jobfinder-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.tero-career-jobs .tero-jobfinder-card__tags span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 4px 10px;
  border-radius: 5px;
  background: #f1f2f4;
  color: #4b5563;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
}

/* Resources/Public/Css/content-elements/supplementary-services.css */
.tero-supplementary-services {
  padding: clamp(52px, 7vw, 92px) 0;
}
.tero-supplementary-services__inner {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
}
.tero-supplementary-services__roofline {
  margin: 0 0 12px;
  color: var(--tero-ci-red);
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .28em;
  line-height: 1.2;
  text-transform: uppercase;
}
.tero-supplementary-services__headline {
  margin: 0;
  color: #252b33;
  font-family:
    Arial,
    Helvetica,
    sans-serif;
  font-size: clamp(34px, 4vw, 54px);
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.08;
}
.tero-supplementary-services__intro {
  max-width: 820px;
  margin-top: 18px;
  color: #4b5563;
  font-size: 18px;
  line-height: 1.65;
}
.tero-supplementary-services__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 34px);
  margin-top: clamp(30px, 5vw, 54px);
}
.tero-supplementary-services__card {
  position: relative;
  min-height: 320px;
  overflow: visible;
  border: 1px solid rgba(18, 32, 52, .08);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 10px 26px rgba(24, 36, 56, .08);
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;
}
.tero-supplementary-services__card:hover {
  transform: translateY(-4px);
  border-color: color-mix(in srgb, var(--tero-ci-red) 16%, transparent);
  box-shadow: 0 18px 40px rgba(24, 36, 56, .14);
}
.tero-supplementary-services__card-content {
  position: relative;
  z-index: 1;
  padding: clamp(34px, 4vw, 58px);
}
.tero-supplementary-services__card h3 {
  margin: 0 0 22px;
  color: #16233a;
  font-size: clamp(26px, 2.4vw, 34px);
  font-weight: 800;
  line-height: 1.15;
}
.tero-supplementary-services__text {
  color: #1f2f46;
  font-size: 18px;
  line-height: 1.55;
}
.tero-supplementary-services__text > :first-child {
  margin-top: 0;
}
.tero-supplementary-services__text > :last-child {
  margin-bottom: 0;
}
.tero-supplementary-services__text strong,
.tero-supplementary-services__text b {
  color: #16233a;
  font-weight: 900;
}
.tero-supplementary-services__conclusion {
  margin-top: 18px;
  color: #16233a;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.45;
}
.tero-supplementary-services__conclusion > :first-child {
  margin-top: 0;
}
.tero-supplementary-services__conclusion > :last-child {
  margin-bottom: 0;
}
.tero-supplementary-services__link {
  display: inline-flex;
  align-items: center;
  margin-top: 22px;
  color: var(--tero-ci-red);
  font-weight: 900;
  text-decoration: none;
}
.tero-supplementary-services__link:hover,
.tero-supplementary-services__link:focus {
  text-decoration: underline;
}

/* Resources/Public/Css/content-elements/supplementary-services-card-frames.css */
.tero-supplementary-services__card::before {
  content: "";
  position: absolute;
  z-index: 2;
  pointer-events: none;
  box-sizing: border-box;
}
.tero-supplementary-services__card:nth-child(odd)::before {
  top: 0;
  bottom: 0;
  left: 0;
  width: 12px;
  background: var(--tero-ci-red);
}
.tero-supplementary-services__card:nth-child(even)::before {
  top: 0;
  right: 0;
  bottom: 0;
  width: 12px;
  background: var(--tero-ci-red);
}
.tero-supplementary-services__card:first-child::before {
  inset: 0;
  width: auto;
  background: transparent;
  border-top: 12px solid var(--tero-ci-red);
  border-left: 12px solid var(--tero-ci-red);
  border-radius: 28px 0 0 0;
}
.tero-supplementary-services__card:nth-child(2)::before {
  inset: 0;
  width: auto;
  background: transparent;
  border-top: 12px solid var(--tero-ci-red);
  border-right: 12px solid var(--tero-ci-red);
  border-radius: 0 28px 0 0;
}
.tero-supplementary-services__card:nth-last-child(2):nth-child(odd)::before {
  inset: 0;
  width: auto;
  background: transparent;
  border-left: 12px solid var(--tero-ci-red);
  border-bottom: 12px solid var(--tero-ci-red);
  border-radius: 0 0 0 28px;
}
.tero-supplementary-services__card:last-child:nth-child(even)::before {
  inset: 0;
  width: auto;
  background: transparent;
  border-right: 12px solid var(--tero-ci-red);
  border-bottom: 12px solid var(--tero-ci-red);
  border-radius: 0 0 28px 0;
}
.tero-supplementary-services__card:last-child:nth-child(odd):not(:first-child) {
  grid-column: 1 / -1;
}
.tero-supplementary-services__card:last-child:nth-child(odd):not(:first-child)::before {
  inset: 0;
  width: auto;
  background: transparent;
  border-left: 6px solid var(--tero-ci-red);
  border-right: 6px solid var(--tero-ci-red);
  border-bottom: 6px solid var(--tero-ci-red);
  border-radius: 0 0 28px 28px;
}
.tero-supplementary-services__card:only-child::before {
  inset: 0;
  width: auto;
  background: transparent;
  border: 6px solid var(--tero-ci-red);
  border-radius: 28px;
}
.tero-supplementary-services__card:first-child:nth-last-child(2)::before {
  inset: 0;
  width: auto;
  background: transparent;
  border-top: 6px solid var(--tero-ci-red);
  border-left: 6px solid var(--tero-ci-red);
  border-bottom: 6px solid var(--tero-ci-red);
  border-radius: 28px 0 0 28px;
}
.tero-supplementary-services__card:nth-child(2):last-child::before {
  inset: 0;
  width: auto;
  background: transparent;
  border-top: 6px solid var(--tero-ci-red);
  border-right: 6px solid var(--tero-ci-red);
  border-bottom: 6px solid var(--tero-ci-red);
  border-radius: 0 28px 28px 0;
}
@media (max-width: 900px) {
  .tero-supplementary-services__grid {
    grid-template-columns: 1fr;
  }
  .tero-supplementary-services__card,
  .tero-supplementary-services__card:last-child:nth-child(odd):not(:first-child) {
    grid-column: auto;
    min-height: auto;
  }
  .tero-supplementary-services__card::before,
  .tero-supplementary-services__card:first-child::before,
  .tero-supplementary-services__card:nth-child(2)::before,
  .tero-supplementary-services__card:nth-last-child(2):nth-child(odd)::before,
  .tero-supplementary-services__card:last-child:nth-child(even)::before,
  .tero-supplementary-services__card:last-child:nth-child(odd):not(:first-child)::before {
    inset: 0;
    width: auto;
    background: transparent;
    border: 4px solid var(--tero-ci-red);
    border-radius: 28px;
  }
}

/* Resources/Public/Css/content-elements/supplementary-services-inner-border.css */
.tero-supplementary-services__card {
  overflow: hidden !important;
}
.tero-supplementary-services__card::before {
  box-sizing: border-box !important;
}
.tero-supplementary-services__card:first-child::before,
.tero-supplementary-services__card:nth-child(2)::before,
.tero-supplementary-services__card:nth-last-child(2):nth-child(odd)::before,
.tero-supplementary-services__card:last-child:nth-child(even)::before,
.tero-supplementary-services__card:last-child:nth-child(odd):not(:first-child)::before,
.tero-supplementary-services__card:only-child::before,
.tero-supplementary-services__card:first-child:nth-last-child(2)::before,
.tero-supplementary-services__card:nth-child(2):last-child::before {
  inset: 0 !important;
}
.tero-supplementary-services__card:nth-child(odd)::before {
  left: 0 !important;
}
.tero-supplementary-services__card:nth-child(even)::before {
  right: 0 !important;
}

/* Resources/Public/Css/content-elements/interactive-service-cards.css */
.tero-interactive-service-cards {
  padding: clamp(42px, 6vw, 80px) 0;
}
.tero-interactive-service-cards__inner {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
}
.tero-interactive-service-cards__roofline {
  margin: 0 0 12px;
  color: var(--tero-ci-red);
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .24em;
  line-height: 1.2;
  text-transform: uppercase;
}
.tero-interactive-service-cards__headline {
  max-width: 860px;
  margin: 0;
  color: #17243a;
  font-family:
    Arial,
    Helvetica,
    sans-serif;
  font-size: clamp(32px, 3.5vw, 48px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.08;
}
.tero-interactive-service-cards__intro {
  max-width: 820px;
  margin-top: 18px;
  color: #4b5563;
  font-size: 18px;
  line-height: 1.65;
}
.tero-interactive-service-cards__grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(18px, 2.4vw, 28px);
  margin-top: clamp(28px, 4vw, 46px);
}
.tero-interactive-service-cards__card {
  position: relative;
  flex: 0 1 calc((100% - 56px) / 3);
  max-width: 372px;
  min-width: 280px;
  height: 320px;
  overflow: hidden;
  border: 1px solid rgba(18, 32, 52, .09);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 10px 26px rgba(24, 36, 56, .08);
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;
}
.tero-interactive-service-cards__card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-top: 5px solid var(--tero-ci-red);
}
.tero-interactive-service-cards__card:hover,
.tero-interactive-service-cards__card:focus,
.tero-interactive-service-cards__card:focus-within {
  transform: translateY(-4px);
  border-color: color-mix(in srgb, var(--tero-ci-red) 22%, transparent);
  box-shadow: 0 18px 40px rgba(24, 36, 56, .14);
  outline: none;
}
.tero-interactive-service-cards__content {
  position: relative;
  height: 100%;
}
.tero-interactive-service-cards__front,
.tero-interactive-service-cards__back {
  position: absolute;
  inset: clamp(28px, 3vw, 38px);
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
}
.tero-interactive-service-cards__front {
  z-index: 2;
  pointer-events: auto;
}
.tero-interactive-service-cards__back {
  z-index: 3;
  pointer-events: none;
}
.tero-interactive-service-cards__card-headline {
  opacity: 1;
  transform: translateY(0);
  transition: opacity .28s ease, transform .28s ease;
}
.tero-interactive-service-cards__card-intro {
  margin-top: 16px;
  opacity: 1;
  transform: translateY(0);
  transition: opacity .28s ease, transform .28s ease;
}
.tero-interactive-service-cards__card-hover {
  opacity: 0;
  transform: scale(.985);
  transition: opacity .28s ease .06s, transform .28s ease .06s;
}
.tero-interactive-service-cards__button {
  align-self: center;
  margin: 24px auto 0;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: scale(.985);
  transition:
    opacity .28s ease .12s,
    transform .28s ease .12s,
    visibility .28s ease .12s;
}
.tero-interactive-service-cards__card:hover .tero-interactive-service-cards__card-headline,
.tero-interactive-service-cards__card:focus .tero-interactive-service-cards__card-headline,
.tero-interactive-service-cards__card:focus-within .tero-interactive-service-cards__card-headline {
  opacity: 0;
  transform: translateY(-38px);
}
.tero-interactive-service-cards__card:hover .tero-interactive-service-cards__card-intro,
.tero-interactive-service-cards__card:focus .tero-interactive-service-cards__card-intro,
.tero-interactive-service-cards__card:focus-within .tero-interactive-service-cards__card-intro {
  opacity: 0;
  transform: translateY(38px);
}
.tero-interactive-service-cards__card:hover .tero-interactive-service-cards__card-hover,
.tero-interactive-service-cards__card:focus .tero-interactive-service-cards__card-hover,
.tero-interactive-service-cards__card:focus-within .tero-interactive-service-cards__card-hover {
  opacity: 1;
  transform: scale(1);
}
.tero-interactive-service-cards__card:hover .tero-interactive-service-cards__button,
.tero-interactive-service-cards__card:focus .tero-interactive-service-cards__button,
.tero-interactive-service-cards__card:focus-within .tero-interactive-service-cards__button {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: scale(1);
}
.tero-interactive-service-cards__card-headline h1,
.tero-interactive-service-cards__card-headline h2,
.tero-interactive-service-cards__card-headline h3,
.tero-interactive-service-cards__card-headline p {
  margin: 0;
  color: #17243a;
  font-size: clamp(22px, 2vw, 27px);
  font-weight: 850;
  line-height: 1.15;
}
.tero-interactive-service-cards__card-intro,
.tero-interactive-service-cards__card-hover {
  color: #26364f;
  font-size: 16.5px;
  line-height: 1.52;
}
.tero-interactive-service-cards__card-intro > :first-child,
.tero-interactive-service-cards__card-hover > :first-child {
  margin-top: 0;
}
.tero-interactive-service-cards__card-intro > :last-child,
.tero-interactive-service-cards__card-hover > :last-child {
  margin-bottom: 0;
}
.tero-interactive-service-cards__button--disabled {
  cursor: default;
  opacity: .65;
}
@media (max-width: 1020px) {
  .tero-interactive-service-cards__card {
    flex-basis: calc((100% - 28px) / 2);
    max-width: 420px;
  }
}
@media (max-width: 720px) {
  .tero-interactive-service-cards__inner {
    width: min(100% - 28px, 520px);
  }
  .tero-interactive-service-cards__card {
    flex-basis: 100%;
    max-width: 100%;
    height: auto;
    min-height: auto;
  }
  .tero-interactive-service-cards__content {
    padding: clamp(28px, 3vw, 38px);
  }
  .tero-interactive-service-cards__front,
  .tero-interactive-service-cards__back {
    position: static;
    inset: auto;
    pointer-events: auto;
  }
  .tero-interactive-service-cards__back {
    margin-top: 18px;
  }
  .tero-interactive-service-cards__card-headline,
  .tero-interactive-service-cards__card-intro,
  .tero-interactive-service-cards__card-hover,
  .tero-interactive-service-cards__button {
    opacity: 1;
    visibility: visible;
    transform: none;
    pointer-events: auto;
  }
  .tero-interactive-service-cards__button {
    margin-right: auto;
    margin-left: auto;
  }
}
.tero-interactive-service-cards__button.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  min-height: 0;
  width: fit-content;
  margin: 24px auto 0;
  padding: 12px 54px 12px 28px;
  border: 0;
  border-radius: 999px;
  background-color: var(--tero-ci-red-faded);
  background-image:
    linear-gradient(
      120deg,
      var(--tero-ci-red) 0%,
      var(--tero-ci-red-faded) 38%,
      var(--tero-ci-red-faded) 50%,
      var(--tero-ci-red-faded) 64%,
      var(--tero-ci-red) 100%);
  background-size: 220% 100%;
  background-position: 0 50%;
  color: #fff;
  box-shadow: 0 14px 28px color-mix(in srgb, var(--tero-ci-red) 26%, transparent);
  font-family: var(--font-head);
  font-size: 15px;
  font-weight: 850;
  line-height: 1.15;
  text-align: center;
  text-decoration: none;
  transition:
    opacity .28s ease .12s,
    transform .28s ease .12s,
    visibility .28s ease .12s,
    background-position .35s ease,
    box-shadow .25s ease,
    color .25s ease !important;
}
.tero-interactive-service-cards__button.button::after {
  right: 26px;
}
.tero-interactive-service-cards__card:not(:hover):not(:focus):not(:focus-within) .tero-interactive-service-cards__button.button {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: scale(.985) !important;
}
.tero-interactive-service-cards__card:hover .tero-interactive-service-cards__button.button,
.tero-interactive-service-cards__card:focus .tero-interactive-service-cards__button.button,
.tero-interactive-service-cards__card:focus-within .tero-interactive-service-cards__button.button {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: scale(1) !important;
}
.tero-interactive-service-cards__button.button:hover,
.tero-interactive-service-cards__button.button:focus-visible {
  background-position: 100% 50%;
  color: #fff;
  box-shadow: 0 18px 34px color-mix(in srgb, var(--tero-ci-red) 34%, transparent);
  text-decoration: none;
}
.tero-interactive-service-cards__button.button:active {
  box-shadow: 0 8px 18px color-mix(in srgb, var(--tero-ci-red) 24%, transparent);
}

/* Resources/Public/Css/content-elements/text-info-card.css */
.tero-text-info-card {
  padding: clamp(42px, 6vw, 80px) 0;
}
.tero-text-info-card__inner {
  box-sizing: border-box;
  width: min(1160px, calc(100% - 48px));
  margin: 0 auto;
  padding: clamp(32px, 4vw, 48px);
  border: 8px solid var(--tero-ci-red);
  border-radius: 28px;
  background:
    linear-gradient(
      135deg,
      #fff 0%,
      #f7f7f8 100%);
  box-shadow: 0 18px 44px rgba(27, 31, 38, .08);
}
.tero-text-info-card__roofline {
  display: block;
  margin: 0 0 12px;
  color: var(--tero-ci-red);
  font-family: var(--font-head, "Roboto Condensed", Verdana, Arial, sans-serif);
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 4px;
  line-height: 25px;
  text-transform: uppercase;
}
.tero-text-info-card__roofline::before,
.tero-text-info-card__roofline::after {
  content: none !important;
  display: none !important;
}
.tero-text-info-card__headline {
  max-width: 920px;
  margin: 0;
  color: rgb(62, 62, 62);
  font-family: var(--font-head, "Roboto Condensed", Verdana, Arial, sans-serif);
  font-size: 40px;
  font-weight: 400;
  letter-spacing: normal;
  line-height: 48px;
}
.tero-text-info-card__intro {
  max-width: 980px;
  margin-top: 18px;
  color: #4b5563;
  font-size: 18px;
  line-height: 1.65;
}
.tero-text-info-card__intro > :first-child {
  margin-top: 0;
}
.tero-text-info-card__intro > :last-child {
  margin-bottom: 0;
}
@media (max-width: 720px) {
  .tero-text-info-card__inner {
    width: min(1160px, calc(100% - 28px));
    padding: 24px;
    border-width: 8px;
    border-radius: 22px;
  }
}
.tero-text-info-card.frame-space-before-none {
  padding-top: 0;
}
.tero-text-info-card.frame-space-before-extra-small {
  padding-top: 16px;
}
.tero-text-info-card.frame-space-before-small {
  padding-top: 28px;
}
.tero-text-info-card.frame-space-before-medium {
  padding-top: 42px;
}
.tero-text-info-card.frame-space-before-large {
  padding-top: 64px;
}
.tero-text-info-card.frame-space-before-extra-large {
  padding-top: 88px;
}
.tero-text-info-card.frame-space-after-none {
  padding-bottom: 0;
}
.tero-text-info-card.frame-space-after-extra-small {
  padding-bottom: 16px;
}
.tero-text-info-card.frame-space-after-small {
  padding-bottom: 28px;
}
.tero-text-info-card.frame-space-after-medium {
  padding-bottom: 42px;
}
.tero-text-info-card.frame-space-after-large {
  padding-bottom: 64px;
}
.tero-text-info-card.frame-space-after-extra-large {
  padding-bottom: 88px;
}
#c518.tero-text-info-card .tero-text-info-card__inner {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
#c518.tero-text-info-card {
  background: transparent !important;
}
#c518.tero-text-info-card .tero-text-info-card__inner {
  box-sizing: border-box !important;
  width: min(1160px, calc(100% - 48px)) !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
#c518.tero-text-info-card .tero-text-info-card__roofline {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}
#c518.tero-text-info-card .tero-text-info-card__roofline::before,
#c518.tero-text-info-card .tero-text-info-card__roofline::after {
  content: "" !important;
  display: inline-block !important;
  width: 10px !important;
  height: 10px !important;
  background: var(--tero-ci-red) !important;
  border-radius: 2px !important;
  flex: 0 0 auto !important;
}
#c518.tero-text-info-card .tero-text-info-card__headline,
#c518.tero-text-info-card .tero-text-info-card__intro {
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}
.tero-text-info-card__roofline.tero-supplementary-services__roofline {
  display: inline-flex !important;
  align-items: center !important;
}
#c518.tero-text-info-card .tero-text-info-card__roofline::before,
#c518.tero-text-info-card .tero-text-info-card__roofline::after {
  content: none !important;
  display: none !important;
}
#c518.tero-text-info-card .tero-text-info-card__roofline.textpicture_roofline::before,
#c518.tero-text-info-card .tero-text-info-card__roofline.textpicture_roofline::after {
  content: "" !important;
  display: inline-block !important;
}
#c518.tero-text-info-card .tero-text-info-card__inner {
  width: min(1160px, calc(100% - 48px)) !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
#c518.tero-text-info-card .tero-text-info-card__roofline,
#c518.tero-text-info-card .tero-text-info-card__headline,
#c518.tero-text-info-card .tero-text-info-card__intro {
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}
#c518.tero-text-info-card .tero-text-info-card__roofline.textpicture_roofline {
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
}
#c518.tero-text-info-card .tero-text-info-card__roofline.textpicture_roofline:not(.textpicture_roofline--decoration-hidden)::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  z-index: -1 !important;
  top: 0 !important;
  left: 0 !important;
  width: 70px !important;
  height: 70px !important;
  background: var(--tero-grey) !important;
  transform: translate(-100px, -85px) !important;
  border-radius: 0 !important;
}
#c518.tero-text-info-card .tero-text-info-card__roofline.textpicture_roofline:not(.textpicture_roofline--decoration-hidden)::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  z-index: -1 !important;
  top: 0 !important;
  left: 0 !important;
  width: 40px !important;
  height: 40px !important;
  background: var(--tero-grey) !important;
  transform: translate(-30px, -10px) !important;
  border-radius: 0 !important;
}
#c518.tero-text-info-card {
  margin-bottom: 48px !important;
}

/* Resources/Public/Css/overrides/03-services-alignment.css */
.tero-supplementary-services__inner,
.tero-interactive-service-cards__inner {
  width: min(1052px, calc(92% - 68px)) !important;
  max-width: 1052px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}
.tero-interactive-service-cards__card-headline {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 60px;
  text-align: center;
}
.tero-interactive-service-cards__card-headline > * {
  width: 100%;
}
.tero-interactive-service-cards__card-headline p,
.tero-interactive-service-cards__card-headline h1,
.tero-interactive-service-cards__card-headline h2,
.tero-interactive-service-cards__card-headline h3 {
  hyphens: auto;
  overflow-wrap: normal;
  word-break: normal;
}
.tero-interactive-service-cards__card-intro {
  min-height: 46px;
  text-align: center;
}
.tero-supplementary-services__roofline,
.tero-interactive-service-cards__roofline {
  display: inline-block !important;
  position: relative !important;
  margin: 0 0 10px !important;
  padding-bottom: 10px !important;
  color: var(--tero-ci-red) !important;
  font: 700 20px/1.25 var(--font-head) !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
}
.tero-supplementary-services__headline,
.tero-interactive-service-cards__headline {
  max-width: 920px !important;
  margin: 0 !important;
  color: var(--tero-heading) !important;
  font-family: var(--font-head) !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 120% !important;
}
.tero-supplementary-services__intro,
.tero-interactive-service-cards__intro {
  max-width: 860px !important;
  margin-top: 12px !important;
  color: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
}
.tero-supplementary-services__card h3 {
  margin: 0 0 18px !important;
  color: var(--tero-heading) !important;
  font-family: var(--font-head) !important;
  font-size: 32px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 120% !important;
}

/* Resources/Public/Css/overrides/04-button-color-harmonization.css */
:root {
  --tero-ci-red: #B81834;
  --tero-ci-red-faded: #C84C62;
  --tero-ci-red-element-faded: #af162f;
  --tero-button-color-start: var(--tero-ci-red);
  --tero-button-color-middle: var(--tero-ci-red-faded);
  --tero-button-color-end: var(--tero-ci-red);
  --tero-button-gradient:
    linear-gradient(
      
      45deg,
      var(--tero-button-color-start) 0%,
      var(--tero-button-color-middle) 52%,
      var(--tero-button-color-end) 100% );
}
.button:not(.outline):not(.button--text):not(:disabled),
input[type=submit]:not(:disabled),
.tero-form-embed-form [data-tero-controlled-submit=true]:not(:disabled),
.tero-cleverreach-form .cr_button:not(:disabled),
.tero-job-application-filebutton:not(:disabled),
.tero-map-consent__load:not(:disabled) {
  background-color: var(--tero-button-color-start);
  background-image: var(--tero-button-gradient);
  background-size: 200% auto;
  background-position: left center;
  box-shadow: 0 12px 26px color-mix(in srgb, var(--tero-ci-red) 18%, transparent), 0 5px 14px rgba(0, 0, 0, .08);
  color: #fff;
  transition:
    background-position .35s ease,
    box-shadow .2s ease,
    transform .12s ease,
    filter .2s ease,
    color .2s ease;
}
.button:not(.outline):not(.button--text):not(:disabled):hover,
.button:not(.outline):not(.button--text):not(:disabled):focus-visible,
input[type=submit]:not(:disabled):hover,
input[type=submit]:not(:disabled):focus-visible,
.tero-form-embed-form [data-tero-controlled-submit=true]:not(:disabled):hover,
.tero-form-embed-form [data-tero-controlled-submit=true]:not(:disabled):focus-visible,
.tero-cleverreach-form .cr_button:not(:disabled):hover,
.tero-cleverreach-form .cr_button:not(:disabled):focus-visible,
.tero-job-application-filebutton:not(:disabled):hover,
.tero-job-application-filebutton:not(:disabled):focus-visible,
.tero-map-consent__load:not(:disabled):hover,
.tero-map-consent__load:not(:disabled):focus-visible {
  background-color: var(--tero-button-color-start);
  background-image: var(--tero-button-gradient);
  background-size: 200% auto;
  background-position: right center;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--tero-ci-red) 20%, transparent), 0 8px 18px color-mix(in srgb, var(--tero-ci-red) 10%, transparent);
  filter: none;
  transform: translateY(-1px);
  color: #fff;
}
.button:not(.outline):not(.button--text):not(:disabled):active,
input[type=submit]:not(:disabled):active,
.tero-form-embed-form [data-tero-controlled-submit=true]:not(:disabled):active,
.tero-cleverreach-form .cr_button:not(:disabled):active,
.tero-job-application-filebutton:not(:disabled):active,
.tero-map-consent__load:not(:disabled):active {
  background-color: var(--tero-button-color-start);
  background-image: var(--tero-button-gradient);
  background-size: 200% auto;
  background-position: right center;
  box-shadow: 0 10px 22px color-mix(in srgb, var(--tero-ci-red) 16%, transparent), 0 4px 12px color-mix(in srgb, var(--tero-ci-red) 8%, transparent);
  filter: none;
  transform: translateY(0);
}
.tero-interactive-service-cards__button.button:not(:disabled) {
  background-color: var(--tero-button-color-start);
  background-image: var(--tero-button-gradient);
  background-size: 200% auto;
  background-position: left center;
  color: #fff;
}
.tero-interactive-service-cards__button.button:not(:disabled):hover,
.tero-interactive-service-cards__button.button:not(:disabled):focus-visible,
.tero-interactive-service-cards__card:hover .tero-interactive-service-cards__button.button,
.tero-interactive-service-cards__card:focus-within .tero-interactive-service-cards__button.button {
  background-position: right center;
}
.textpicture_textblock .button,
.frame-type-pxtero_tiles .tiles-top-right .button,
.tero-intro-tiles-5__actions .button:not(.outline):not(.button--text),
.tero-intro-tiles-5__content .button,
.tero-map-consent__load {
  border-radius: 999px;
}
#tero-chatbot .tero-chatbot__button--primary:not(:disabled),
.tero-job-application #tero-chatbot .tero-chatbot__button--primary:not(:disabled) {
  background-color: var(--tero-button-color-start);
  background-image: var(--tero-button-gradient);
  background-size: 200% auto;
  background-position: left center;
  box-shadow: 0 12px 26px color-mix(in srgb, var(--tero-ci-red) 18%, transparent), 0 5px 14px rgba(0, 0, 0, .08);
  color: #fff;
  transition:
    background-position .35s ease,
    box-shadow .2s ease,
    transform .12s ease,
    filter .2s ease,
    color .2s ease;
}
#tero-chatbot .tero-chatbot__button--primary:not(:disabled):hover,
#tero-chatbot .tero-chatbot__button--primary:not(:disabled):focus-visible,
.tero-job-application #tero-chatbot .tero-chatbot__button--primary:not(:disabled):hover,
.tero-job-application #tero-chatbot .tero-chatbot__button--primary:not(:disabled):focus-visible {
  background-color: var(--tero-button-color-start);
  background-image: var(--tero-button-gradient);
  background-size: 200% auto;
  background-position: right center;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--tero-ci-red) 20%, transparent), 0 8px 18px color-mix(in srgb, var(--tero-ci-red) 10%, transparent);
  filter: none;
  transform: translateY(-1px);
  color: #fff;
}
#tero-chatbot .tero-chatbot__button--primary:not(:disabled):active,
.tero-job-application #tero-chatbot .tero-chatbot__button--primary:not(:disabled):active {
  background-position: right center;
  box-shadow: 0 10px 22px color-mix(in srgb, var(--tero-ci-red) 16%, transparent), 0 4px 12px color-mix(in srgb, var(--tero-ci-red) 8%, transparent);
  filter: none;
  transform: translateY(0);
}

/* Resources/Public/Css/overrides/05-cards-accordions-cta-refinement.css */
.frame-type-pxtero_bannerisolated .banner.isolated .buttons .shadowbox {
  border-radius: 10px;
  background-color: #fff;
  background-image:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, .98) 0%,
      rgba(255, 255, 255, .9) 58%,
      rgba(246, 247, 249, .96) 100%);
  box-shadow: 0 14px 30px rgba(27, 31, 38, .10), 0 2px 8px color-mix(in srgb, var(--tero-ci-red) 6%, transparent);
}
.frame-type-pxtero_bannerisolated .banner.isolated .buttons .shadowbox:hover,
.frame-type-pxtero_bannerisolated .banner.isolated .buttons .shadowbox:focus-visible {
  box-shadow: 0 18px 36px rgba(27, 31, 38, .13), 0 4px 12px color-mix(in srgb, var(--tero-ci-red) 8%, transparent);
}
.frame-type-pxtero_tiles:not(.tero-intro-tiles-5) .tiles-bottom.col5 > .tile,
.tero-intro-tiles-5 .tiles-bottom.col5 > .tile {
  border-radius: 10px;
  background-image:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, .98) 0%,
      rgba(255, 255, 255, .92) 58%,
      rgba(246, 247, 249, .96) 100%);
  box-shadow: 0 12px 28px rgba(27, 31, 38, .08);
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;
}
.frame-type-pxtero_tiles:not(.tero-intro-tiles-5) .tiles-bottom.col5 > .tile:hover,
.frame-type-pxtero_tiles:not(.tero-intro-tiles-5) .tiles-bottom.col5 > .tile:focus-visible,
.tero-intro-tiles-5 .tiles-bottom.col5 > .tile:hover,
.tero-intro-tiles-5 .tiles-bottom.col5 > .tile:focus-visible {
  border-color: color-mix(in srgb, var(--tero-ci-red) 16%, transparent);
  box-shadow: 0 16px 34px rgba(27, 31, 38, .11);
  transform: translateY(-2px);
}
.frame-type-pxtero_tiles .tiles-bottom.col3 > .tile.hover,
.frame-type-pxtero_tiles .tiles-bottom.col3 > .tile.hover > .hover {
  border-radius: 10px;
}
.frame-type-pxtero_tiles .tiles-bottom.col3 > .tile.hover {
  overflow: hidden;
}
.frame-type-pxtero_tiles .tiles-bottom.col3 > .tile.hover > .hover {
  display: grid;
  grid-template-columns: 64px 1fr;
  grid-template-areas: "icon headline" "text text";
  column-gap: 22px;
  row-gap: 18px;
  align-content: start;
  align-items: center;
}
.frame-type-pxtero_tiles .tiles-bottom.col3 > .tile.hover > .hover > .image {
  grid-area: icon;
  width: 64px;
  height: 64px;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.frame-type-pxtero_tiles .tiles-bottom.col3 > .tile.hover > .hover > .image img {
  width: 100%;
  height: 100%;
  max-width: 64px;
  max-height: 64px;
  object-fit: contain;
  display: block;
}
.frame-type-pxtero_tiles .tiles-bottom.col3 > .tile.hover > .hover > .headline {
  grid-area: headline;
  text-align: left;
  align-self: center;
}
.frame-type-pxtero_tiles .tiles-bottom.col3 > .tile.hover > .hover > .headline .like-h3 {
  margin: 0;
}
.frame-type-pxtero_tiles .tiles-bottom.col3 > .tile.hover > .hover > .text {
  grid-area: text;
}
.frame-type-pxtero_tiles .tiles-bottom.col3 > .tile.hover > .hover > .text p:first-child {
  margin-top: 0;
}
@media (max-width: 767px) {
  .frame-type-pxtero_tiles .tiles-bottom.col3 > .tile.hover > .hover {
    grid-template-columns: 1fr;
    grid-template-areas: "icon" "headline" "text";
    text-align: center;
  }
  .frame-type-pxtero_tiles .tiles-bottom.col3 > .tile.hover > .hover > .image {
    justify-self: center;
  }
  .frame-type-pxtero_tiles .tiles-bottom.col3 > .tile.hover > .hover > .headline {
    text-align: center;
  }
}
.redboxcta {
  border-radius: 12px;
  background-image:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, .08) 0%,
      rgba(255, 255, 255, 0) 42%),
    linear-gradient(
      135deg,
      var(--tero-ci-red) 0%,
      var(--tero-ci-red-element-faded) 54%,
      var(--tero-ci-red) 100%);
  box-shadow: 0 18px 42px color-mix(in srgb, var(--tero-ci-red) 20%, transparent), 0 8px 18px rgba(27, 31, 38, .08);
  overflow: visible;
}
.frame-type-pxtero_googlemap .map-placeholder.tero-map-consent,
[class^=map_image_wrap_uid] .map_btn {
  border-radius: 12px;
  box-shadow: 0 16px 36px rgba(27, 31, 38, .10);
}
.frame-type-pxtero_googlemap .map-placeholder.tero-map-consent {
  background-image:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, .98) 0%,
      rgba(255, 255, 255, .9) 56%,
      rgba(241, 242, 244, .96) 100%);
}
.tero-map-consent iframe {
  border-radius: inherit;
}
#c113 .tiles-bottom.col3 > .tile.hover > .hover {
  position: static;
  inset: auto;
  width: 100%;
  height: auto;
  min-height: 0;
  padding: 0;
  display: none;
  opacity: 1;
  pointer-events: auto;
  transform: none;
}
#c113 .tiles-bottom.col3 > .tile.hover:hover > .hover,
#c113 .tiles-bottom.col3 > .tile.hover:focus-within > .hover {
  display: grid;
}
#c113 .tiles-bottom.col3 > .tile.hover:hover > .image,
#c113 .tiles-bottom.col3 > .tile.hover:hover > .headline,
#c113 .tiles-bottom.col3 > .tile.hover:focus-within > .image,
#c113 .tiles-bottom.col3 > .tile.hover:focus-within > .headline {
  display: none;
}
#c114 .tiles-bottom.col5 > .tile {
  min-width: 0;
}
#c114 .tiles-bottom.col5 > .tile,
#c114 .tiles-bottom.col5 > .tile * {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  hyphens: auto;
}
#c127 .tiles-bottom > .tile {
  min-width: 0;
}
#c127 .tiles-bottom > .tile,
#c127 .tiles-bottom > .tile * {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  hyphens: auto;
}

/* Resources/Public/Css/overrides/06-redbox-map-faq-adjustments.css */
.faq .tero-accordion-bottom-button .button,
.faq .tero-accordion-bottom-button .button.outline,
.faq .accordion-more-button-wrap .button,
.faq .accordion-more-button-wrap .button.outline {
  border: 0 !important;
  border-radius: 999px !important;
  background-color: var(--tero-button-color-start) !important;
  background-image: var(--tero-button-gradient) !important;
  background-size: 200% auto !important;
  background-position: left center !important;
  color: #fff !important;
  box-shadow: 0 12px 28px color-mix(in srgb, var(--tero-ci-red) 18%, transparent) !important;
}
.faq .tero-accordion-bottom-button .button::after,
.faq .tero-accordion-bottom-button .button.outline::after,
.faq .accordion-more-button-wrap .button::after,
.faq .accordion-more-button-wrap .button.outline::after {
  background-image: url("./assets/arrow-right-white-NYTRSB3R.svg") !important;
}
.faq .tero-accordion-bottom-button .button:hover,
.faq .tero-accordion-bottom-button .button:focus-visible,
.faq .accordion-more-button-wrap .button:hover,
.faq .accordion-more-button-wrap .button:focus-visible {
  background-position: right center !important;
  color: #fff !important;
  box-shadow: 0 16px 34px color-mix(in srgb, var(--tero-ci-red) 24%, transparent) !important;
}
.frame-type-pxtero_googlemap .map-placeholder.tero-map-consent,
[class^=map_image_wrap_uid] .map_btn {
  border-radius: 12px !important;
}
.redboxcta {
  overflow: visible !important;
}
.redboxcta > .inner {
  position: relative;
  z-index: 1;
  overflow: hidden;
  border-radius: inherit;
}
.frame-type-pxtero_grid100 > .inner > .frame-ci_bg.frame-type-pxtero_grid2cols {
  overflow: hidden;
  border-radius: 14px;
  background-image:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, .06) 0%,
      rgba(255, 255, 255, 0) 45%,
      rgba(0, 0, 0, .06) 100%);
  background-clip: padding-box;
}
.frame-type-pxtero_googlemap [class^=map_image_wrap_uid],
.frame-type-pxtero_googlemap [class*=" map_image_wrap_uid"],
.frame-type-pxtero_googlemap .map-placeholder.tero-map-consent {
  overflow: hidden;
  border-radius: 12px;
}
.redboxcta > .inner {
  overflow: visible !important;
}
.redboxcta:not(.decor) {
  overflow: hidden !important;
}
.redboxcta.decor {
  overflow: visible !important;
}
.tero-supplementary-services__inner,
.tero-interactive-service-cards__inner {
  width: var(--tero-side) !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
}
.tero-intro-tiles-5 > .inner,
.tero-intro-tiles-5 .tiles,
.tero-intro-tiles-5 .tiles-top,
.tero-intro-tiles-5 .tiles-top-left,
.tero-intro-tiles-5 .tiles-bottom.col5 {
  width: 100%;
  max-width: var(--tero-content);
  margin-right: auto;
  margin-left: auto;
}
.tero-newsletter-intro {
  width: var(--tero-side);
  max-width: var(--tero-content);
  margin-right: auto;
  margin-left: auto;
}
.frame-type-list .tx-powermail .powermail_form_4.tero-form-embed-form {
  width: 100%;
  max-width: 1120px;
}
body[data-accessibility-dark=true] .frame-type-pxtero_googlemap .map-placeholder.tero-map-consent:not(.is-loaded) {
  background: var(--tero-dark-surface-2, #252a32) !important;
  background-color: var(--tero-dark-surface-2, #252a32) !important;
  background-image: none !important;
  color: var(--tero-dark-text, #f4f5f7) !important;
  border-color: var(--tero-dark-border, #3a404a) !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, .30) !important;
}
body[data-accessibility-dark=true] .frame-type-pxtero_googlemap .map-placeholder.tero-map-consent:not(.is-loaded) .tero-map-consent__content,
body[data-accessibility-dark=true] .frame-type-pxtero_googlemap .map-placeholder.tero-map-consent:not(.is-loaded) .tero-map-consent__content p,
body[data-accessibility-dark=true] .frame-type-pxtero_googlemap .map-placeholder.tero-map-consent:not(.is-loaded) .tero-map-consent__content strong {
  color: var(--tero-dark-text, #f4f5f7) !important;
}

/* Resources/Public/Css/overrides/07-layout-alignment-forms-two-column.css */
.frame-type-list .tx-powermail,
.frame-type-list .tx-powermail > .container-fluid {
  width: 100% !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}
.frame-type-list .tero-form-embed-form {
  width: 100% !important;
  max-width: var(--tero-content) !important;
  box-sizing: border-box !important;
}
.frame-type-pxtero_grid2cols:not(.frame-ci_bg) > .inner,
.frame-type-pxtero_grid2cols:not(.frame-ci_bg) .gridrow.grid2cols {
  width: 100% !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}
.cont > .frame-type-pxtero_grid2cols.tero-bg-area-section-full:not(.frame-ci_bg) {
  width: var(--tero-side) !important;
  max-width: 1180px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}
.cont > .frame-type-pxtero_grid2cols.tero-bg-area-section-full:not(.frame-ci_bg) > .inner,
.cont > .frame-type-pxtero_grid2cols.tero-bg-area-section-full:not(.frame-ci_bg) .gridrow.grid2cols {
  width: 100% !important;
  max-width: 1180px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}
.cont > .frame-type-pxtero_grid2cols.tero-bg-area-section-full:not(.frame-ci_bg) {
  width: var(--tero-side) !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
}
.cont > .frame-type-pxtero_grid2cols.tero-bg-area-section-full:not(.frame-ci_bg) > .inner {
  width: 100% !important;
  max-width: none !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}
.cont > .frame-type-pxtero_grid2cols.tero-bg-area-section-full:not(.frame-ci_bg) .gridrow.grid2cols {
  display: flex !important;
  width: 100% !important;
  max-width: none !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}
.cont > .frame-type-pxtero_grid2cols.tero-bg-area-section-full:not(.frame-ci_bg) .gridrow.grid2cols > .col {
  flex: 1 1 0 !important;
  width: auto !important;
  max-width: none !important;
}
.cont > .frame-type-pxtero_grid2cols.tero-bg-area-section-full:not(.frame-ci_bg) .gridrow.grid2cols > .col + .col {
  margin-left: 40px !important;
}
.cont > .frame-type-pxtero_grid2cols.tero-bg-area-section-full:not(.frame-ci_bg) .ce-textpic,
.cont > .frame-type-pxtero_grid2cols.tero-bg-area-section-full:not(.frame-ci_bg) .ce-bodytext {
  width: 100% !important;
  max-width: none !important;
}
.cont > .frame-type-pxtero_grid2cols.tero-bg-area-section-full:not(.frame-ci_bg) {
  padding-right: 0 !important;
  padding-left: 0 !important;
}
.cont > .frame-type-tero-locations-overview.tero-locations-overview {
  padding-right: 0 !important;
  padding-left: 0 !important;
}
.cont > .frame-type-tero-locations-overview .tero-locations-overview__inner,
.cont > .frame-type-tero-locations-overview .tero-locations-overview__tiles,
.cont > .frame-type-tero-locations-overview .tero-locations-cards {
  width: 100% !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}
.tero-career-jobs__inner {
  width: var(--tero-side) !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
  box-sizing: border-box !important;
}
.tero-career-jobs__results,
.tero-career-jobs__list,
.tero-career-jobs__bottom-text {
  width: 100% !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}
.tero-job-contact-box__inner {
  width: var(--tero-side) !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
  box-sizing: border-box !important;
}
.tero-job-contact-box__card,
.tero-job-contact-box__message {
  width: 100% !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}
.tero-job-detail {
  width: var(--tero-side) !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
  box-sizing: border-box !important;
}
.tero-job-detail-hero-image,
.tero-job-detail-hero,
.tero-job-detail-badges,
.tero-job-detail-meta,
.tero-job-detail-section,
.tero-job-detail-actions {
  width: 100% !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}
.tero-job-application {
  width: var(--tero-side) !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}
.tero-job-application-hero,
.tero-job-application-form,
.tero-job-application-success,
.tero-job-application-missing {
  width: 100% !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}
.cont > .frame-type-tero-newsletter-form,
.cont > .tero-newsletter-form-wrap {
  width: var(--tero-side) !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
  box-sizing: border-box !important;
}
.cont > .frame-type-tero-newsletter-form > .inner,
.cont > .tero-newsletter-form-wrap > .inner {
  width: 100% !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
  box-sizing: border-box !important;
}
.cont > .frame-type-tero-newsletter-form .tero-cleverreach-form,
.cont > .tero-newsletter-form-wrap .tero-cleverreach-form,
.cont > .frame-type-tero-newsletter-form .tero-cleverreach-form .formbox,
.cont > .tero-newsletter-form-wrap .tero-cleverreach-form .formbox {
  width: 100% !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}

/* Resources/Public/Css/overrides/08-application-location-design-adjustments.css */
.tero-job-application-actions button[type=submit].button {
  min-height: 44px !important;
  padding-top: 11px !important;
  padding-bottom: 11px !important;
  line-height: 1.15 !important;
}
.tero-job-application-jobline::before {
  top: 0 !important;
  left: 0 !important;
  width: 70px !important;
  height: 70px !important;
  transform: translate(-100px, -85px) !important;
}
.tero-job-application-jobline::after {
  top: 0 !important;
  left: 0 !important;
  width: 40px !important;
  height: 40px !important;
  transform: translate(-30px, -10px) !important;
}
.tero-location-card {
  min-height: 196px !important;
  grid-template-columns: minmax(0, 1fr) 180px !important;
}
.tero-location-card__media {
  min-height: 156px !important;
}
.tero-location-card__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}
@media (max-width: 900px) {
  .tero-location-card {
    grid-template-columns: minmax(0, 1fr) 150px !important;
  }
}
@media (max-width: 640px) {
  .tero-location-card {
    min-height: 176px !important;
    grid-template-columns: minmax(0, 1fr) 136px !important;
    -card {
      min-height: 176px !important;
      grid-template-columns: minmax(0, 1fr);
    }
  }
}
@media (max-width: 460px) {
  .tero-location-card {
    grid-template-columns: 1fr !important;
  }
  .tero-location-card__media {
    min-height: 180px !important;
  }
}
.tero-location-detail__opening-hours p {
  margin: 0 0 .25em;
}
.tero-location-detail__opening-hours p:last-child {
  margin-bottom: 0;
}
.cont > .tero-location-detail,
.cont > .tero-location-team {
  width: var(--tero-side) !important;
  max-width: var(--tero-content) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
  overflow: visible;
}
.tero-location-detail__inner,
.tero-location-team__inner {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}
.tero-location-team__list,
.tero-location-team--vertical .tero-location-team__list {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}
.tero-location-detail__image-card,
.tero-location-detail__contact-card,
.tero-location-team__row {
  max-width: 100% !important;
  box-sizing: border-box !important;
}
.tero-location-detail__image,
.tero-location-detail__placeholder {
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Resources/Public/Css/overrides/09-flexible-hoverbar-neighbor-layout.css */
.tero-flexible-hoverbar__item.is-left-3 {
  opacity: .36;
  transform: translateX(calc(var(--tero-logo-step) * -3)) scale(.68);
  z-index: 1;
}
@media (max-width: 900px) {
  .tero-flexible-hoverbar__item.is-left-3 {
    opacity: 0;
    pointer-events: none;
  }
}

/* Resources/Public/Css/jobs/07-form-collapse-alignment.css */
.tero-form-collapse .frame,
.tero-form-collapse .frame > .inner,
.tero-form-collapse .tx-powermail,
.tero-form-collapse .tx-powermail > .container-fluid {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}
.tero-form-collapse .tero-form-embed-form {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}
.tero-form-collapse.is-open .tero-form-embed-form {
  border: 0 !important;
  border-radius: 0 0 9px 9px !important;
  background: transparent !important;
  box-shadow: none !important;
}
@media (max-width: 780px) {
  .tero-form-collapse {
    width: 92% !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .tero-form-collapse.is-enhanced .tero-form-collapse__content,
  .tero-form-collapse__icon::before,
  .tero-form-collapse__icon::after {
    transition: none;
  }
}
.frame-type-pxtero_grid100:has(.tero-form-collapse) {
  width: var(--tero-side) !important;
  max-width: var(--tero-content) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}
.frame-type-pxtero_grid100:has(.tero-form-collapse) > .inner {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}
.frame-type-pxtero_grid100:has(.tero-form-collapse) .tero-form-collapse {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  border-radius: 10px;
  box-sizing: border-box !important;
  overflow: visible !important;
}
.tero-form-collapse__trigger {
  display: none;
}
.tero-form-collapse.is-enhanced .tero-form-collapse__trigger {
  display: flex;
  width: 100%;
  min-height: 58px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px 22px;
  border: 1px solid color-mix(in srgb, var(--tero-ci-red) 18%, transparent);
  border-radius: 10px;
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, .98),
      rgba(247, 247, 248, .94));
  box-shadow: 0 12px 30px rgba(27, 31, 38, .08);
  color: #262626;
  cursor: pointer;
  font-family: var(--font-head);
  font-size: clamp(1.05rem, 1.5vw, 1.25rem);
  font-weight: 700;
  line-height: 1.2;
  box-sizing: border-box;
}
.tero-form-collapse.is-open {
  border: 1px solid rgba(38, 38, 38, .10);
  background: #fff;
  box-shadow: 0 28px 70px rgba(0, 0, 0, .11);
}
.tero-form-collapse.is-open .tero-form-collapse__trigger {
  border: 0;
  border-bottom: 1px solid color-mix(in srgb, var(--tero-ci-red) 18%, transparent);
  border-radius: 9px 9px 0 0;
  box-shadow: none;
}
.tero-form-collapse__icon {
  position: relative;
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
}
.tero-form-collapse__icon::before,
.tero-form-collapse__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 2px;
  border-radius: 999px;
  background: #b81834;
  transform: translate(-50%, -50%);
  transition: transform .3s ease;
}
.tero-form-collapse__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.tero-form-collapse.is-open .tero-form-collapse__icon::after {
  transform: translate(-50%, -50%) rotate(0deg);
}
.tero-form-collapse.is-enhanced .tero-form-collapse__content {
  height: 0;
  overflow: hidden;
  transition: height .45s ease;
}
.tero-form-collapse__panel {
  background: transparent;
  overflow: visible;
}
.tero-form-collapse.is-open .tero-form-collapse__panel {
  border-radius: 0 0 9px 9px;
  background: #fff;
  box-shadow: none;
  overflow: visible;
}
.frame-type-pxtero_grid100:has(.tero-form-collapse) .tero-form-collapse .frame,
.frame-type-pxtero_grid100:has(.tero-form-collapse) .tero-form-collapse .frame > .inner,
.frame-type-pxtero_grid100:has(.tero-form-collapse) .tero-form-collapse .tx-powermail,
.frame-type-pxtero_grid100:has(.tero-form-collapse) .tero-form-collapse .tx-powermail > .container-fluid,
.frame-type-pxtero_grid100:has(.tero-form-collapse) .tero-form-collapse .tero-form-embed-form {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}
.frame-type-pxtero_grid100:has(.tero-form-collapse) .tero-form-collapse .frame > .inner,
.frame-type-pxtero_grid100:has(.tero-form-collapse) .tero-form-collapse .tx-powermail > .container-fluid {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.frame-type-pxtero_grid100:has(.tero-form-collapse) .tero-form-collapse.is-open .tero-form-embed-form {
  border: 0 !important;
  border-radius: 0 0 9px 9px !important;
  background: transparent !important;
  box-shadow: none !important;
}
@media (prefers-reduced-motion: reduce) {
  .tero-form-collapse.is-enhanced .tero-form-collapse__content,
  .tero-form-collapse__icon::before,
  .tero-form-collapse__icon::after {
    transition: none;
  }
}

/* Resources/Public/Css/content-elements/text-picture-cta-roofline-toggle.css */
.textpicture_roofline {
  isolation: isolate;
  overflow: visible;
}
.textpicture_roofline:not(.textpicture_roofline--decoration-hidden)::before,
.textpicture_roofline:not(.textpicture_roofline--decoration-hidden)::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  background: var(--tero-grey);
  width: 70px;
  height: 70px;
  transform: translate(-100px, -85px);
}
.textpicture_roofline:not(.textpicture_roofline--decoration-hidden)::after {
  width: 40px;
  height: 40px;
  transform: translate(-30px, -10px);
}
.textpicture_roofline--decoration-hidden::before,
.textpicture_roofline--decoration-hidden::after {
  content: none !important;
  display: none !important;
}

/* Resources/Public/Css/overrides/10-roofline-toggle-global.css */
.tero-roofline--decoration-hidden::before,
.tero-roofline--decoration-hidden::after {
  content: none !important;
  display: none !important;
}

/* Resources/Public/Css/jobs/08-career-jobs-side-field.css */
.tero-career-jobs {
  width: 100%;
}
.tero-career-jobs__section {
  width: 92%;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}
.tero-career-jobs__inner {
  width: 100%;
  max-width: none;
  margin: 0;
}
.tero-career-jobs__intro {
  width: 100%;
  max-width: none;
  margin: 0 0 32px;
}
.tero-career-jobs__content-row {
  display: grid;
  grid-template-columns: minmax(250px, 310px) minmax(0, 1fr);
  gap: 32px;
  width: 100%;
  max-width: none;
  margin: 0;
  align-items: flex-start;
}
.tero-career-jobs__training-aside {
  position: sticky;
  top: var(--jobfinder-sticky-top, 104px);
  min-width: 0;
}
.tero-career-jobs__training-box {
  margin: 0;
}
.tero-career-jobs__results,
.tero-career-jobs__list {
  width: 100%;
  max-width: none;
  min-width: 0;
}
.tero-career-jobs__training-headline {
  margin: 0 0 18px;
  color: var(--jobfinder-dark, #3e3e3e);
  font-size: 25px;
  line-height: 1.2;
  font-weight: 700;
}
.tero-career-jobs__training-list ul {
  display: grid;
  gap: 10px;
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}
.tero-career-jobs__training-list li {
  position: relative;
  margin: 0;
  padding: 10px 12px 10px 30px;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, .08);
  border-radius: 6px;
  color: var(--jobfinder-dark, #3e3e3e);
  font-weight: 700;
  line-height: 1.35;
}
.tero-career-jobs__training-list li::before {
  content: "";
  position: absolute;
  left: 11px;
  top: 50%;
  width: 12px;
  height: 7px;
  border-left: 2px solid var(--tero-ci-red);
  border-bottom: 2px solid var(--tero-ci-red);
  transform: translateY(-65%) rotate(-45deg);
}
@media (max-width: 1100px) {
  .tero-career-jobs__content-row {
    grid-template-columns: 1fr;
  }
  .tero-career-jobs__training-aside {
    position: static;
  }
}

/* Resources/Public/Css/overrides/11-career-jobs-spacing.css */
.tero-career-jobs__section {
  padding-top: 48px !important;
}
.tero-career-jobs__inner {
  width: min(1160px, calc(100% - 40px)) !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.tero-career-jobs__intro {
  width: 100% !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.tero-career-jobs__intro .tero-career-jobs__bodytext {
  max-width: 1160px !important;
}
.tero-career-jobs__intro .tero-career-jobs__bodytext p {
  max-width: 1160px !important;
}
.tero-career-jobs__content-row {
  display: block !important;
  width: 100% !important;
  max-width: 1160px !important;
  margin: 32px auto 0 !important;
}
.tero-career-jobs__training-aside {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  flex: none !important;
}
.tero-career-jobs__training-box {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  padding: 28px 32px 24px !important;
}
.tero-career-jobs__training-headline {
  margin: 0 0 12px !important;
}
.tero-career-jobs__training-columns {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  column-gap: 64px !important;
  row-gap: 24px !important;
  width: 100% !important;
  max-width: none !important;
  align-items: start !important;
}
.tero-career-jobs__training-column {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
}
.tero-career-jobs__training-column p,
.tero-career-jobs__training-column ul,
.tero-career-jobs__training-column ol {
  margin-top: 0 !important;
}
.tero-career-jobs__training-column p:last-child,
.tero-career-jobs__training-column ul:last-child,
.tero-career-jobs__training-column ol:last-child {
  margin-bottom: 0 !important;
}
.tero-career-jobs__training-action {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  width: 100% !important;
  margin: 24px 0 0 !important;
}
.tero-career-jobs__training-action .tero-career-jobs__training-button.button {
  margin-left: auto !important;
}
.tero-career-jobs__results,
.tero-career-jobs__list {
  width: 100% !important;
  max-width: none !important;
}
.tero-career-jobs__results {
  margin-top: 36px !important;
}
.tero-career-jobs__bottom-text {
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
@media (max-width: 899px) {
  .tero-career-jobs__section {
    padding-top: 36px !important;
  }
  .tero-career-jobs__inner {
    width: min(100% - 32px, 1160px) !important;
  }
  .tero-career-jobs__training-box {
    padding: 24px 22px !important;
  }
  .tero-career-jobs__training-columns {
    grid-template-columns: 1fr !important;
    column-gap: 0 !important;
    row-gap: 24px !important;
  }
  .tero-career-jobs__training-action {
    justify-content: flex-start !important;
  }
  .tero-career-jobs__training-action .tero-career-jobs__training-button.button {
    margin-left: 0 !important;
  }
}

/* Resources/Public/Css/overrides/12-applicant-tiles-specific.css */
.tero-training-tiles-new__header,
.tero-info-tiles-3-new__header {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
  align-items: flex-start !important;
}
.tero-training-tiles-new__roofline,
.tero-training-tiles-new__headline,
.tero-training-tiles-new__intro,
.tero-training-tiles-new__bottom-text,
.tero-info-tiles-3-new__roofline,
.tero-info-tiles-3-new__headline,
.tero-info-tiles-3-new__intro,
.tero-info-tiles-3-new__bottom-text {
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}
.tero-info-tiles-3-new__actions {
  justify-content: flex-start !important;
}
#c75 .tero-info-tiles-3-new__inner {
  width: 92% !important;
  max-width: 1400px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}
#c75 .tero-info-tiles-3-new__header {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-align: left !important;
  align-items: flex-start !important;
}
#c75 .tero-info-tiles-3-new__roofline,
#c75 .tero-info-tiles-3-new__headline,
#c75 .tero-info-tiles-3-new__intro,
#c75 .tero-info-tiles-3-new__bottom-text {
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}
#c75 .tero-info-tiles-3-new__grid,
#c75 .tero-info-tiles-3-new__items,
#c75 .tero-info-tiles-3-new__cards {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
#c75 .tero-info-tiles-3-new__actions {
  justify-content: flex-start !important;
}
#c75.frame-type-tero-info-tiles-3-new,
#c75.tero-info-tiles-3-new {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
#c75 .tero-info-tiles-3-new__inner {
  width: var(--tero-side) !important;
  max-width: var(--tero-content) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}
#c75 .tero-info-tiles-3-new__header,
#c75 .tero-info-tiles-3-new__grid,
#c75 .tero-info-tiles-3-new__bottom-text,
#c75 .tero-info-tiles-3-new__actions {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
#c75 .tero-info-tiles-3-new__header {
  text-align: left !important;
  align-items: flex-start !important;
}
#c75 .tero-info-tiles-3-new__roofline,
#c75 .tero-info-tiles-3-new__headline,
#c75 .tero-info-tiles-3-new__intro,
#c75 .tero-info-tiles-3-new__intro p,
#c75 .tero-info-tiles-3-new__bottom-text,
#c75 .tero-info-tiles-3-new__bottom-text p {
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}
#c75 .tero-info-tiles-3-new__intro {
  max-width: 860px !important;
}
#c75 .tero-info-tiles-3-new__actions {
  justify-content: flex-start !important;
}

/* Resources/Public/Css/jobs/09-career-jobs-button.css */
.tero-career-jobs__training-action {
  display: flex !important;
  justify-content: flex-start !important;
  width: 100% !important;
  margin-top: 20px !important;
}
.tero-career-jobs__training-action .tero-career-jobs__training-button.button {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  position: relative !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 46px !important;
  box-sizing: border-box !important;
  padding: 13px 22px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background-color: var(--tero-button-color-start) !important;
  background-image: var(--tero-button-gradient) !important;
  background-position: left center !important;
  background-size: 200% auto !important;
  box-shadow: 0 12px 26px color-mix(in srgb, var(--tero-ci-red) 18%, transparent), 0 5px 14px rgba(0, 0, 0, .08) !important;
  color: #fff !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition:
    background-position .35s ease,
    box-shadow .2s ease,
    transform .12s ease,
    filter .2s ease !important;
}
.tero-career-jobs__training-action .tero-career-jobs__training-button.button::after {
  content: none !important;
  display: none !important;
}
.tero-career-jobs__training-action .tero-career-jobs__training-button.button:hover,
.tero-career-jobs__training-action .tero-career-jobs__training-button.button:focus-visible {
  background-position: right center !important;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--tero-ci-red) 18%, transparent), 0 6px 16px rgba(0, 0, 0, .07) !important;
  color: #fff !important;
  filter: brightness(1.03) !important;
  text-decoration: none !important;
}
.tero-career-jobs__training-action .tero-career-jobs__training-button.button:active {
  transform: scale(.98) !important;
}
.tero-job-detail-actions .tero-job-detail-backlink.button {
  background-color: #3a3a3a !important;
  background-image:
    linear-gradient(
      120deg,
      #2f2f2f 0%,
      #3a3a3a 36%,
      #5a5a5a 50%,
      #3a3a3a 64%,
      #292929 100%) !important;
  border-color: #3a3a3a !important;
  box-shadow: 0 12px 24px rgba(0, 0, 0, .24) !important;
  color: #fff !important;
}
.tero-job-detail-actions .tero-job-detail-backlink.button:hover,
.tero-job-detail-actions .tero-job-detail-backlink.button:focus-visible {
  background-color: #2f2f2f !important;
  border-color: #2f2f2f !important;
  box-shadow: 0 16px 30px rgba(0, 0, 0, .32) !important;
  color: #fff !important;
}
.tero-job-detail-actions .tero-job-detail-backlink.button:active {
  box-shadow: 0 8px 18px rgba(0, 0, 0, .24) !important;
}
.tero-job-detail-actions .button[data-job-apply] {
  font-weight: 800;
}

/* Resources/Public/Css/overrides/13-location-overview-specific.css */
.tero-locations-overview .tero-locations-cards {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
  gap: clamp(18px, 2vw, 28px) !important;
}
.tero-locations-overview .tero-location-card {
  min-height: clamp(190px, 15vw, 230px) !important;
  grid-template-columns: minmax(0, 1fr) clamp(150px, 16vw, 220px) !important;
}
.tero-locations-overview .tero-location-card__media {
  min-height: clamp(150px, 12vw, 200px) !important;
}
.tero-locations-overview .tero-location-card__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}
@media (max-width: 900px) {
  .tero-locations-overview .tero-location-card {
    grid-template-columns: 1fr !important;
  }
  .tero-locations-overview .tero-location-card__media {
    order: -1 !important;
    min-height: 210px !important;
  }
}
@media (max-width: 560px) {
  .tero-locations-overview .tero-location-card__media {
    min-height: 180px !important;
  }
}
.tero-locations-overview .tero-locations-cards {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  gap: clamp(18px, 2vw, 28px) !important;
}
.tero-locations-overview .tero-location-card {
  width: 100% !important;
  min-width: 0 !important;
  grid-template-columns: minmax(0, 1fr) clamp(120px, 10vw, 170px) !important;
}
.tero-locations-overview .tero-location-card__media {
  min-height: clamp(135px, 10vw, 180px) !important;
}
.tero-locations-overview .tero-location-card__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
@media (max-width: 1100px) {
  .tero-locations-overview .tero-locations-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 700px) {
  .tero-locations-overview .tero-locations-cards {
    grid-template-columns: 1fr !important;
  }
  .tero-locations-overview .tero-location-card {
    grid-template-columns: 1fr !important;
  }
  .tero-locations-overview .tero-location-card__media {
    order: -1 !important;
    min-height: 180px !important;
  }
}
.tero-locations-overview .tero-locations-cards {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  gap: clamp(18px, 2vw, 28px) !important;
}
.tero-locations-overview .tero-location-card {
  width: 100% !important;
  min-width: 0 !important;
  grid-template-columns: minmax(0, 1fr) clamp(120px, 10vw, 170px) !important;
}
.tero-locations-overview .tero-location-card__media {
  min-height: clamp(135px, 10vw, 180px) !important;
}
.tero-locations-overview .tero-location-card__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
@media (max-width: 1100px) {
  .tero-locations-overview .tero-locations-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 700px) {
  .tero-locations-overview .tero-locations-cards {
    grid-template-columns: 1fr !important;
  }
  .tero-locations-overview .tero-location-card {
    grid-template-columns: 1fr !important;
  }
  .tero-locations-overview .tero-location-card__media {
    order: -1 !important;
    min-height: 180px !important;
  }
}
.tero-locations-overview .tero-location-card {
  min-height: clamp(152px, 12vw, 184px) !important;
  padding: 14px !important;
  gap: 14px !important;
}
.tero-locations-overview .tero-location-card__media {
  min-height: clamp(108px, 8vw, 144px) !important;
}
.tero-locations-overview .tero-location-card__title {
  margin-top: 10px !important;
  margin-bottom: 14px !important;
  font-size: clamp(1.22rem, 1.6vw, 1.55rem) !important;
}
.tero-locations-overview .tero-location-card__eyebrow {
  font-size: 0.72rem !important;
}
.tero-locations-overview .tero-location-card__link {
  line-height: 1.15 !important;
}

/* Resources/Public/Css/overrides/14-flexible-text.css */
.frame-type-tero-flexible-text.tero-flexible-text,
.frame-type-tero-flexible-text .tero-flexible-text {
  width: 100% !important;
  max-width: none !important;
}
.frame-type-tero-flexible-text .tero-flexible-text__inner {
  width: var(--tero-side) !important;
  max-width: var(--tero-content) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  text-align: left !important;
}
.frame-type-tero-flexible-text .tero-flexible-text__roofline,
.frame-type-tero-flexible-text .tero-flexible-text__headline,
.frame-type-tero-flexible-text .tero-flexible-text__intro,
.frame-type-tero-flexible-text .tero-flexible-text__sections,
.frame-type-tero-flexible-text .tero-flexible-text-section__body {
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
  text-align: left !important;
}
.frame-type-tero-flexible-text .tero-flexible-text__roofline {
  margin-bottom: 10px !important;
}
.frame-type-tero-flexible-text .tero-flexible-text__headline {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  color: #171717 !important;
  font-family: var(--font-head) !important;
  font-size: 2rem !important;
  font-weight: 500 !important;
  line-height: 1.15 !important;
  letter-spacing: 0 !important;
}
.frame-type-tero-flexible-text .tero-flexible-text__intro,
.frame-type-tero-flexible-text .tero-flexible-text-section__body {
  color: #3f3f3f !important;
  font-family: var(--font-copy) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
}
.frame-type-tero-flexible-text .tero-flexible-text__intro {
  margin-top: 14px !important;
}
.frame-type-tero-flexible-text .tero-flexible-text__sections {
  margin-top: 28px !important;
}
.frame-type-tero-flexible-text .tero-flexible-text__intro > :first-child,
.frame-type-tero-flexible-text .tero-flexible-text-section__body > :first-child {
  margin-top: 0 !important;
}
.frame-type-tero-flexible-text .tero-flexible-text__intro p,
.frame-type-tero-flexible-text .tero-flexible-text-section__body p {
  margin-bottom: 1rem !important;
}
.frame-type-tero-flexible-text .tero-flexible-text__intro > :last-child,
.frame-type-tero-flexible-text .tero-flexible-text-section__body > :last-child {
  margin-bottom: 0 !important;
}
@media (max-width: 980px) {
  .frame-type-tero-flexible-text .tero-flexible-text__headline {
    font-size: 2rem !important;
  }
}
@media (max-width: 640px) {
  .frame-type-tero-flexible-text .tero-flexible-text__headline {
    font-size: 1.85rem !important;
  }
}
.frame-type-tero-flexible-text .tero-flexible-text__headline {
  color: #171717 !important;
  font-family: var(--font-head) !important;
  font-size: 2.55rem !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.02em !important;
}
@media (max-width: 980px) {
  .frame-type-tero-flexible-text .tero-flexible-text__headline {
    font-size: 2.15rem !important;
  }
}
@media (max-width: 640px) {
  .frame-type-tero-flexible-text .tero-flexible-text__headline {
    font-size: 1.85rem !important;
  }
}
.frame-type-tero-flexible-text .tero-flexible-text__headline {
  color: #171717 !important;
  font-family: var(--font-head) !important;
  font-size: 2rem !important;
  font-weight: 500 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.015em !important;
}
.frame-type-tero-flexible-text .tero-flexible-text__headline {
  font-size: 40px !important;
}
:root {
  --tero-flow-content-max-width: var(--tero-content, 1160px);
  --tero-flow-body-font-size: 18px;
  --tero-flow-body-line-height: 1.56;
}
.tero-flow-block {
  width: 100%;
  max-width: var(--tero-flow-content-max-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
  text-align: left;
}
.tero-flow-body {
  font-family: var(--font-copy, "Lato", Verdana, Arial, sans-serif);
  font-size: var(--tero-flow-body-font-size) !important;
  font-weight: 400;
  line-height: var(--tero-flow-body-line-height) !important;
  hyphens: manual;
  overflow-wrap: normal;
  word-break: normal;
}
.tero-training-tiles-new__intro.tero-flow-body,
.tero-info-tiles-3-new__intro.tero-flow-body,
.tero-training-tiles-new__bottom-text.tero-flow-body,
.tero-info-tiles-3-new__bottom-text.tero-flow-body,
.tero-interactive-service-cards__intro.tero-flow-body,
.tero-intro-tiles-5__text.tero-flow-body,
.tero-flexible-text__intro.tero-flow-body,
.tero-flexible-text-section__body.tero-flow-body {
  font-size: var(--tero-flow-body-font-size) !important;
  line-height: var(--tero-flow-body-line-height) !important;
}
.tero-training-tiles-new__header.tero-flow-block,
.tero-info-tiles-3-new__header.tero-flow-block,
.tero-training-tiles-new__intro.tero-flow-block,
.tero-info-tiles-3-new__intro.tero-flow-block,
.tero-training-tiles-new__bottom-text.tero-flow-block,
.tero-info-tiles-3-new__bottom-text.tero-flow-block,
.tero-interactive-service-cards__intro.tero-flow-block,
.tero-intro-tiles-5__content.tero-flow-block,
.tero-intro-tiles-5__text.tero-flow-block,
.tero-flexible-text__intro.tero-flow-block {
  width: 100% !important;
  max-width: var(--tero-flow-content-max-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
#c75 .tero-info-tiles-3-new__intro.tero-flow-block {
  max-width: var(--tero-flow-content-max-width) !important;
}
.tero-flow-body p,
.tero-flow-body li {
  font-size: inherit !important;
  line-height: inherit !important;
}
.tero-flow-body > :first-child {
  margin-top: 0 !important;
}
.tero-flow-body > :last-child {
  margin-bottom: 0 !important;
}
:root {
  --tero-flow-text-readable-width: 860px;
}
.tero-flow-block {
  max-width: var(--tero-flow-content-max-width) !important;
}
.tero-flow-body {
  max-width: var(--tero-flow-text-readable-width) !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}
.tero-flexible-text-section__body.tero-flow-body {
  max-width: var(--tero-flow-text-readable-width) !important;
}
.tero-flow-block.tero-flow-body {
  max-width: var(--tero-flow-text-readable-width) !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}
:root {
  --tero-flow-text-readable-width: var(--tero-flow-content-max-width, 1160px);
}
.tero-flow-body,
.tero-flow-block.tero-flow-body,
.tero-training-tiles-new__intro.tero-flow-body,
.tero-info-tiles-3-new__intro.tero-flow-body,
.tero-training-tiles-new__bottom-text.tero-flow-body,
.tero-info-tiles-3-new__bottom-text.tero-flow-body,
.tero-interactive-service-cards__intro.tero-flow-body,
.tero-intro-tiles-5__text.tero-flow-body,
.tero-flexible-text__intro.tero-flow-body,
.tero-flexible-text-section__body.tero-flow-body,
#c75 .tero-info-tiles-3-new__intro.tero-flow-block.tero-flow-body,
#c75 .tero-info-tiles-3-new__bottom-text.tero-flow-block.tero-flow-body {
  width: 100% !important;
  max-width: var(--tero-flow-content-max-width, 1160px) !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}
.tero-social-media-wall__intro.tero-flow-block,
.tero-text-info-card__intro.tero-flow-block,
.tero-locations-overview__text.tero-flow-block,
.tero-career-jobs__intro.tero-flow-block {
  width: 100% !important;
  max-width: var(--tero-flow-content-max-width, 1160px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
  text-align: left !important;
}
.tero-social-media-wall__intro.tero-flow-body,
.tero-text-info-card__intro.tero-flow-body,
.tero-locations-overview__text.tero-flow-body {
  width: 100% !important;
  max-width: var(--tero-flow-content-max-width, 1160px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-family: var(--font-copy, "Lato", Verdana, Arial, sans-serif);
  font-size: var(--tero-flow-body-font-size, 18px) !important;
  font-weight: 400;
  line-height: var(--tero-flow-body-line-height, 1.56) !important;
  hyphens: manual;
  overflow-wrap: normal;
  word-break: normal;
}
.tero-career-jobs__intro.tero-flow-block {
  max-width: var(--tero-flow-content-max-width, 1160px) !important;
}
#c518.tero-text-info-card .tero-text-info-card__intro.tero-flow-body,
.frame-type-tero-locations-overview .tero-locations-overview__text.tero-flow-body,
.tero-locations-overview .tero-locations-overview__text.tero-flow-body {
  width: 100% !important;
  max-width: var(--tero-flow-content-max-width, 1160px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.frame-type-tero-locations-overview .tero-locations-overview__intro {
  width: 100% !important;
  max-width: var(--tero-flow-content-max-width, 1160px) !important;
}
.frame-type-tero-locations-overview .tero-locations-overview__intro-left {
  width: 100% !important;
  max-width: var(--tero-flow-content-max-width, 1160px) !important;
  flex: 0 0 100% !important;
}
.frame-type-tero-locations-overview .tero-locations-overview__text.tero-flow-body {
  width: 100% !important;
  max-width: var(--tero-flow-content-max-width, 1160px) !important;
}

/* Resources/Public/Css/layout/04-header-nav-adjustments.css */
header nav .nav li.uid13 > a,
.head nav .nav li.uid13 > a {
  display: inline-flex !important;
  align-items: center !important;
  column-gap: 0.35em !important;
}
header nav .nav li.uid13 > a > span:first-child,
.head nav .nav li.uid13 > a > span:first-child {
  display: inline-block !important;
}
header nav .nav li.uid13 > a > .tero-header-external-icon,
.head nav .nav li.uid13 > a > .tero-header-external-icon {
  display: inline-block !important;
  position: static !important;
  flex: 0 0 auto !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  color: currentColor !important;
  font-size: 0.72em !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(-0.12em) !important;
  background: none !important;
}
header nav .nav li.uid13 > a > .tero-header-external-icon::before,
header nav .nav li.uid13 > a > .tero-header-external-icon::after,
.head nav .nav li.uid13 > a > .tero-header-external-icon::before,
.head nav .nav li.uid13 > a > .tero-header-external-icon::after {
  content: none !important;
  display: none !important;
}

/* Resources/Public/Css/content-elements/social-media-wall.css */
.tero-social-media-wall {
  width: 100%;
  max-width: none;
  margin: 0;
}
.tero-social-media-wall__inner {
  width: var(--tero-side);
  max-width: var(--tero-content);
  margin-right: auto;
  margin-left: auto;
  box-sizing: border-box;
  text-align: left;
}
.tero-social-media-wall__roofline,
.tero-social-media-wall__platform,
.tero-social-media-wall__headline,
.tero-social-media-wall__intro,
.tero-social-media-wall__grid,
.tero-social-media-wall__actions {
  margin-right: 0;
  margin-left: 0;
  text-align: left;
}
.tero-social-media-wall__roofline,
.tero-social-media-wall__platform {
  display: inline-block;
  margin-top: 0;
  margin-bottom: 10px;
  color: var(--tero-ci-red);
  font-family: var(--font-head);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}
.tero-social-media-wall__platform {
  display: block;
  margin-bottom: 8px;
  font-size: 0.78rem;
  letter-spacing: 0.16em;
}
.tero-social-media-wall__headline {
  margin-top: 0;
  margin-bottom: 0;
  color: #171717;
  font-family: var(--font-head);
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: 0;
}
.tero-social-media-wall__intro,
.tero-social-media-wall__text {
  color: #3f3f3f;
  font-family: var(--font-copy);
  font-size: 1rem;
  line-height: 1.65;
}
.tero-social-media-wall__intro {
  margin-top: 14px;
}
.tero-social-media-wall__intro > :first-child,
.tero-social-media-wall__text > :first-child {
  margin-top: 0;
}
.tero-social-media-wall__intro > :last-child,
.tero-social-media-wall__text > :last-child {
  margin-bottom: 0;
}
.tero-social-media-wall__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  margin-top: 32px;
}
.tero-social-media-wall__card {
  min-width: 0;
  padding: 28px;
  border: 1px solid rgba(23, 23, 23, 0.08);
  border-radius: 20px;
  background:
    linear-gradient(
      180deg,
      #fff 0%,
      #fbfbfb 100%);
  box-shadow: 0 14px 34px rgba(23, 23, 23, 0.07);
}
.tero-social-media-wall__card--local {
  padding: 0;
  overflow: hidden;
}
.tero-social-media-wall__media-link,
.tero-social-media-wall__media {
  display: block;
}
.tero-social-media-wall__media {
  position: relative;
  overflow: hidden;
  aspect-ratio: 4 / 5;
  background: #f2f2f2;
}
.tero-social-media-wall__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform .3s ease;
}
.tero-social-media-wall__media-link:hover img,
.tero-social-media-wall__media-link:focus-visible img {
  transform: scale(1.025);
}
.tero-social-media-wall__media-badge {
  position: absolute;
  top: 14px;
  right: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.68);
  color: #fff;
  font-size: 1rem;
}
.tero-social-media-wall__content {
  padding: 24px 28px 28px;
}
.tero-social-media-wall__media-unavailable {
  margin: 0;
  padding: 44px 28px;
  background: #f2f2f2;
  color: #6a6a6a;
  text-align: center;
}
.tero-social-media-wall__text {
  overflow-wrap: anywhere;
}
.tero-social-media-wall__date {
  margin: 0 0 10px;
  color: #6a6a6a;
  font-family: var(--font-head);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.35;
  text-transform: uppercase;
}
.tero-social-media-wall__title {
  margin: 0 0 14px;
  color: #171717;
  font-family: var(--font-head);
  font-size: 1.35rem;
  font-weight: 500;
  line-height: 1.25;
}
.tero-social-media-wall__link {
  display: inline-flex;
  margin-top: 18px;
  color: var(--tero-ci-red);
  font-family: var(--font-head);
  font-weight: 700;
  text-decoration: none;
}
.tero-social-media-wall__link:hover,
.tero-social-media-wall__link:focus-visible {
  text-decoration: underline;
}
.tero-social-media-wall__actions {
  display: flex;
  justify-content: flex-start;
  margin-top: 28px;
}
.tero-social-media-wall__grid + .tero-social-media-wall__actions {
  margin-top: 32px;
}
.tero-social-media-wall__profile-link.button {
  border-radius: 999px;
}
.tero-social-media-wall--compact .tero-social-media-wall__grid {
  gap: 16px;
}
.tero-social-media-wall--compact .tero-social-media-wall__card {
  padding: 22px;
}
.tero-social-media-wall--compact .tero-social-media-wall__card--local {
  padding: 0;
}
@media (max-width: 980px) {
  .tero-social-media-wall__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .tero-social-media-wall__headline {
    font-size: 1.85rem;
  }
  .tero-social-media-wall__grid {
    grid-template-columns: 1fr;
  }
  .tero-social-media-wall__card {
    padding: 22px;
  }
}

/* Resources/Public/Css/overrides/15-social-media-wall-alignment.css */
.frame-type-tero-social-media-wall.tero-social-media-wall,
.cont > .frame-type-tero-social-media-wall {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.frame-type-tero-social-media-wall > .inner {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__inner {
  width: var(--tero-side) !important;
  max-width: var(--tero-content) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
  text-align: left !important;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__roofline,
.frame-type-tero-social-media-wall .tero-social-media-wall__platform,
.frame-type-tero-social-media-wall .tero-social-media-wall__headline,
.frame-type-tero-social-media-wall .tero-social-media-wall__intro,
.frame-type-tero-social-media-wall .tero-social-media-wall__grid,
.frame-type-tero-social-media-wall .tero-social-media-wall__actions {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
  margin-top: 32px !important;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__card {
  display: block;
  box-sizing: border-box;
  color: inherit;
  text-decoration: none;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__card--link {
  position: relative;
  cursor: pointer;
  padding-right: 58px;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__card--link:hover,
.frame-type-tero-social-media-wall .tero-social-media-wall__card--link:focus-visible {
  border-color: color-mix(in srgb, var(--tero-ci-red) 28%, transparent);
  box-shadow: 0 18px 40px rgba(23, 23, 23, 0.11);
  transform: translateY(-3px);
}
.frame-type-tero-social-media-wall .tero-social-media-wall__external-icon {
  position: absolute;
  right: 22px;
  top: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--tero-ci-red) 10%, transparent);
  color: var(--tero-ci-red);
  font-family: var(--font-head);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
}
@media (max-width: 980px) {
  .frame-type-tero-social-media-wall .tero-social-media-wall__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 640px) {
  .frame-type-tero-social-media-wall .tero-social-media-wall__grid {
    grid-template-columns: 1fr !important;
  }
}

/* Resources/Public/Css/content-elements/social-media-wall-carousel.css */
.frame-type-tero-social-media-wall .tero-social-media-wall__carousel {
  position: relative;
  width: 100% !important;
  max-width: none !important;
  margin-top: 32px;
  overflow: visible !important;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__viewport {
  position: relative;
  width: 100% !important;
  max-width: none !important;
  margin-top: -24px;
  margin-bottom: -34px;
  padding-top: 36px !important;
  padding-bottom: 52px !important;
  overflow: hidden !important;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__viewport::before,
.frame-type-tero-social-media-wall .tero-social-media-wall__viewport::after {
  content: "";
  position: absolute;
  top: 36px;
  bottom: 52px;
  z-index: 4;
  width: 44px;
  pointer-events: none;
  opacity: 0;
  transition: opacity .25s ease;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__viewport::before {
  left: 0;
  background:
    linear-gradient(
      90deg,
      #fff 0%,
      rgba(255, 255, 255, 0) 100%);
}
.frame-type-tero-social-media-wall .tero-social-media-wall__viewport::after {
  right: 0;
  background:
    linear-gradient(
      270deg,
      #fff 0%,
      rgba(255, 255, 255, 0) 100%);
}
.frame-type-tero-social-media-wall .tero-social-media-wall__carousel.is-carousel-active .tero-social-media-wall__viewport::before,
.frame-type-tero-social-media-wall .tero-social-media-wall__carousel.is-carousel-active .tero-social-media-wall__viewport::after {
  opacity: 1;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__track {
  --tero-social-wall-gap: 22px;
  position: relative;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-height: var(--tero-social-wall-track-height, 360px);
  margin: 0 !important;
  padding: 0 !important;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__slide {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;
  width: calc((100% - (2 * var(--tero-social-wall-gap))) / 3) !important;
  min-width: 0;
  max-width: calc((100% - (2 * var(--tero-social-wall-gap))) / 3) !important;
  opacity: 0;
  filter: saturate(0.86);
  pointer-events: none;
  transform: translateX(-50%) scale(0.84);
  transition:
    transform .55s ease,
    opacity .55s ease,
    filter .55s ease,
    box-shadow .55s ease;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__slide.is-center {
  z-index: 3;
  opacity: 1;
  filter: none;
  pointer-events: auto;
  transform: translateX(-50%) scale(1);
}
.frame-type-tero-social-media-wall .tero-social-media-wall__slide.is-prev {
  z-index: 2;
  opacity: 0.25;
  filter: saturate(0.78);
  pointer-events: auto;
  transform: translateX(calc(-150% - var(--tero-social-wall-gap))) scale(0.9);
}
.frame-type-tero-social-media-wall .tero-social-media-wall__slide.is-next {
  z-index: 2;
  opacity: 0.25;
  filter: saturate(0.78);
  pointer-events: auto;
  transform: translateX(calc(50% + var(--tero-social-wall-gap))) scale(0.9);
}
.frame-type-tero-social-media-wall .tero-social-media-wall__slide.is-hidden {
  z-index: 1;
  opacity: 0;
  pointer-events: none;
  transform: translateX(-50%) scale(0.84);
}
.frame-type-tero-social-media-wall .tero-social-media-wall__slide > .tero-social-media-wall__card {
  height: 100%;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__slide.is-center > .tero-social-media-wall__card {
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.14) !important;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__slide.is-prev > .tero-social-media-wall__card,
.frame-type-tero-social-media-wall .tero-social-media-wall__slide.is-next > .tero-social-media-wall__card {
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08) !important;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__controls {
  position: absolute;
  inset: 0;
  z-index: 5;
  pointer-events: none;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__controls[hidden] {
  display: none !important;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__control {
  position: absolute;
  top: 50%;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 52px;
  height: 52px;
  padding: 0 !important;
  border: 1px solid rgba(134, 15, 36, 0.18);
  border-radius: 999px;
  background: var(--tero-ci-red);
  box-shadow: 0 14px 34px rgba(23, 23, 23, 0.18), 0 8px 20px color-mix(in srgb, var(--tero-ci-red) 20%, transparent);
  color: #fff;
  font-family:
    Arial,
    Helvetica,
    sans-serif;
  font-size: 3.35rem;
  font-weight: 400;
  line-height: 1 !important;
  text-align: center;
  text-indent: -9999px;
  overflow: hidden;
  cursor: pointer;
  pointer-events: auto;
  transform: translateY(-50%);
  transition:
    background .2s ease,
    color .2s ease,
    transform .2s ease,
    box-shadow .2s ease;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__control::before {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  line-height: 1;
  text-indent: 0;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__control--prev {
  left: calc(-26px - 0.5cm);
}
.frame-type-tero-social-media-wall .tero-social-media-wall__control--prev::before {
  content: "\2039";
  transform: translate(-2px, -2px);
}
.frame-type-tero-social-media-wall .tero-social-media-wall__control--next {
  right: calc(-26px - 0.5cm);
}
.frame-type-tero-social-media-wall .tero-social-media-wall__control--next::before {
  content: "\203a";
  transform: translate(2px, -2px);
}
.frame-type-tero-social-media-wall .tero-social-media-wall__control:hover,
.frame-type-tero-social-media-wall .tero-social-media-wall__control:focus-visible {
  background: var(--tero-ci-red);
  color: #fff;
  box-shadow: 0 18px 38px rgba(23, 23, 23, 0.2), 0 10px 24px color-mix(in srgb, var(--tero-ci-red) 28%, transparent);
  transform: translateY(calc(-50% - 2px));
}
.frame-type-tero-social-media-wall .tero-social-media-wall__control:disabled {
  pointer-events: none;
  opacity: 0.45;
}
.frame-type-tero-social-media-wall .tero-social-media-wall__carousel + .tero-social-media-wall__actions {
  margin-top: 32px;
}
@media (max-width: 980px) {
  .frame-type-tero-social-media-wall .tero-social-media-wall__slide {
    width: calc((100% - var(--tero-social-wall-gap)) / 2) !important;
    max-width: calc((100% - var(--tero-social-wall-gap)) / 2) !important;
  }
  .frame-type-tero-social-media-wall .tero-social-media-wall__slide.is-center {
    transform: translateX(calc(-100% - (var(--tero-social-wall-gap) / 2))) scale(1);
  }
  .frame-type-tero-social-media-wall .tero-social-media-wall__slide.is-next {
    opacity: 0.26;
    transform: translateX(calc(0% + (var(--tero-social-wall-gap) / 2))) scale(0.9);
  }
  .frame-type-tero-social-media-wall .tero-social-media-wall__slide.is-prev {
    opacity: 0;
    pointer-events: none;
    transform: translateX(calc(-200% - var(--tero-social-wall-gap))) scale(0.86);
  }
}
@media (max-width: 640px) {
  .frame-type-tero-social-media-wall .tero-social-media-wall__carousel {
    margin-top: 28px;
  }
  .frame-type-tero-social-media-wall .tero-social-media-wall__viewport {
    margin-top: -18px;
    margin-bottom: -28px;
    padding-top: 28px !important;
    padding-bottom: 42px !important;
  }
  .frame-type-tero-social-media-wall .tero-social-media-wall__viewport::before,
  .frame-type-tero-social-media-wall .tero-social-media-wall__viewport::after {
    content: none;
  }
  .frame-type-tero-social-media-wall .tero-social-media-wall__slide {
    width: 100% !important;
    max-width: 100% !important;
  }
  .frame-type-tero-social-media-wall .tero-social-media-wall__slide.is-center {
    transform: translateX(-50%) scale(1);
  }
  .frame-type-tero-social-media-wall .tero-social-media-wall__slide.is-prev,
  .frame-type-tero-social-media-wall .tero-social-media-wall__slide.is-next {
    opacity: 0;
    pointer-events: none;
    transform: translateX(-50%) scale(0.9);
  }
  .frame-type-tero-social-media-wall .tero-social-media-wall__control--prev {
    left: calc(8px - 0.5cm);
  }
  .frame-type-tero-social-media-wall .tero-social-media-wall__control--next {
    right: calc(8px - 0.5cm);
  }
  .frame-type-tero-social-media-wall .tero-social-media-wall__control {
    width: 42px;
    height: 42px;
    font-size: 2.75rem;
  }
}

/* Resources/Public/Css/overrides/20-mobile-sticky-buttons.css */
@media (max-width: 767px) {
  .sticky-buttons {
    --tero-mobile-sticky-size: clamp(28px, 7vw, 32px);
    --tero-mobile-sticky-icon: clamp(16px, 4.4vw, 18px);
    position: static;
    inset: auto;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: 2px;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 10px 4px;
    box-sizing: border-box;
    transform: none;
    z-index: 20;
    pointer-events: auto;
    overflow: visible;
    background: #fff;
    box-shadow: 0 10px 28px rgba(27, 31, 38, .08);
  }
  .sticky-buttons .ce-textpic,
  .sticky-buttons .ce-bodytext,
  .sticky-buttons ul {
    display: contents;
  }
  .sticky-buttons ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .sticky-buttons ul li,
  .sticky-buttons ul li:hover,
  .sticky-buttons ul li:focus-within {
    transform: none;
  }
  .sticky-buttons ul li {
    order: 1;
    box-sizing: border-box;
    flex: 0 0 var(--tero-mobile-sticky-size);
    width: var(--tero-mobile-sticky-size);
    min-width: var(--tero-mobile-sticky-size);
    max-width: var(--tero-mobile-sticky-size);
    height: var(--tero-mobile-sticky-size);
    padding: 0;
    margin: 0;
    overflow: hidden;
    box-shadow: 0 6px 18px rgba(27, 31, 38, .08);
    background: #fff;
  }
  .sticky-buttons ul li + li {
    margin-top: 0;
  }
  .sticky-buttons a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--tero-mobile-sticky-size);
    height: var(--tero-mobile-sticky-size);
    min-height: var(--tero-mobile-sticky-size);
    padding: 0;
    overflow: hidden;
  }
  .sticky-buttons .sticky-button-label {
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }
  .sticky-buttons .sticky-button-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: var(--tero-mobile-sticky-size);
    height: var(--tero-mobile-sticky-size);
    margin-right: 0;
    border-right: 0;
  }
  .sticky-buttons .sticky-button-icon img {
    display: block;
    max-width: var(--tero-mobile-sticky-icon);
    max-height: var(--tero-mobile-sticky-icon);
    width: auto;
    height: auto;
  }
  .sticky-buttons .mail::before,
  .sticky-buttons .phone::before,
  .sticky-buttons .facebook::before,
  .sticky-buttons .xing::before,
  .sticky-buttons .instagram::before {
    width: var(--tero-mobile-sticky-size);
    height: var(--tero-mobile-sticky-size);
    margin-right: 0;
    border-right: 0;
    background-position: center;
    background-size: var(--tero-mobile-sticky-icon) auto;
  }
  #accessibility-wrap {
    order: 2;
    position: relative;
    flex: 0 0 var(--tero-mobile-sticky-size);
    width: var(--tero-mobile-sticky-size);
    min-width: var(--tero-mobile-sticky-size);
    max-width: var(--tero-mobile-sticky-size);
    max-height: none;
    margin: 0;
    transform: none;
    overflow: visible;
    filter: none;
  }
  #accessibility-wrap.open {
    transform: none;
    max-width: var(--tero-mobile-sticky-size);
  }
  #accessibility-wrap #accessibility-toggle {
    width: var(--tero-mobile-sticky-size);
    min-width: var(--tero-mobile-sticky-size);
    height: var(--tero-mobile-sticky-size);
    margin: 0;
    box-shadow: 0 6px 18px rgba(27, 31, 38, .08);
  }
  #accessibility-wrap #accessibility-toggle::after {
    width: calc(var(--tero-mobile-sticky-icon) + 3px);
    height: calc(var(--tero-mobile-sticky-icon) + 3px);
  }
  #accessibility-wrap #accessibility-inner {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    left: auto;
    transform: none;
    width: min(340px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    max-height: 70dvh;
    margin: 0;
    box-sizing: border-box;
    z-index: 120;
  }
  #accessibility-wrap.open #accessibility-inner {
    display: flex !important;
  }
}
@media (max-width: 767px) {
  .sticky-buttons {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
  }
  .sticky-buttons .ce-textpic,
  .sticky-buttons .ce-bodytext {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .sticky-buttons .ce-textpic {
    order: 1 !important;
    flex: 0 1 auto !important;
  }
  .sticky-buttons ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2px !important;
    width: auto !important;
    max-width: none !important;
  }
  #accessibility-wrap {
    order: 2 !important;
    flex: 0 0 28px !important;
    width: 28px !important;
    min-width: 28px !important;
    max-width: 28px !important;
    margin: 0 !important;
  }
}
@media (max-width: 767px) {
  .sticky-buttons {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: space-evenly !important;
    align-items: center !important;
    gap: 0 !important;
    padding: 10px 8px !important;
  }
  .sticky-buttons .ce-textpic,
  .sticky-buttons .ce-bodytext,
  .sticky-buttons ul {
    display: contents !important;
  }
  .sticky-buttons ul li,
  .sticky-buttons a,
  .sticky-buttons .sticky-button-icon,
  #accessibility-wrap,
  #accessibility-wrap.open,
  #accessibility-wrap #accessibility-toggle {
    box-sizing: border-box !important;
    flex: 0 0 28px !important;
    width: 28px !important;
    min-width: 28px !important;
    max-width: 28px !important;
    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .sticky-buttons ul li {
    order: 1 !important;
    transform: none !important;
  }
  #accessibility-wrap {
    order: 2 !important;
    position: relative !important;
    transform: none !important;
    overflow: visible !important;
    filter: none !important;
  }
  #accessibility-wrap #accessibility-toggle::after {
    width: 18px !important;
    height: 18px !important;
  }
  .sticky-buttons .sticky-button-icon img {
    max-width: 16px !important;
    max-height: 16px !important;
  }
  .sticky-buttons .mail::before,
  .sticky-buttons .phone::before,
  .sticky-buttons .facebook::before,
  .sticky-buttons .xing::before,
  .sticky-buttons .instagram::before {
    width: 28px !important;
    height: 28px !important;
    margin-right: 0 !important;
    border-right: 0 !important;
    background-position: center !important;
    background-size: 16px auto !important;
  }
  #accessibility-wrap #accessibility-inner {
    top: calc(100% + 10px) !important;
    right: 0 !important;
    left: auto !important;
    transform: none !important;
  }
}
.tero-home-hero-mobile-sticky-buttons {
  display: none;
}
@media (max-width: 767px) {
  .tero-home-hero-mobile-sticky-buttons {
    display: block;
    width: 100%;
    max-width: 100%;
  }
  .tero-home-hero-mobile-sticky-buttons .sticky-buttons {
    margin: 0;
  }
  .frame-type-pxtero_bannerisolated > .sticky-buttons,
  .banner.isolated > .text + .sticky-buttons {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .main:has(.tero-home-hero-mobile-sticky-buttons) > .sticky-buttons {
    display: none !important;
  }
  .tero-home-hero-mobile-sticky-buttons .sticky-buttons {
    display: flex !important;
  }
}

/* Resources/Public/Css/overrides/22-mobile-overflow-fix.css */
@media (max-width: 767px) {
  html,
  body {
    max-width: 100%;
    overflow-x: clip;
  }
  .tero-newsletter-popup {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
    box-sizing: border-box !important;
    overflow-x: clip !important;
  }
  .tero-newsletter-popup__box {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }
  .tero-newsletter-popup__content,
  .tero-newsletter-popup__text {
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-wrap: anywhere;
  }
  .foot-newsletter-cta,
  .foot-newsletter-cta__link {
    max-width: 100% !important;
    box-sizing: border-box !important;
    transform: none !important;
  }
}

/* Resources/Public/Css/overrides/23-mobile-footer-spacing-only.css */
@media (max-width: 767px) {
  .foot .footer-social-link {
    display: inline-flex;
    margin-top: 0.9rem;
    margin-left: 0.45rem;
    margin-right: 0.45rem;
  }
  .foot-newsletter-cta {
    margin-top: 1.15rem !important;
    margin-bottom: 1.35rem !important;
  }
}

/* Resources/Public/Css/overrides/26-mobile-header-dropdown.css */
@media (max-width: 1200px) {
  .head {
    position: relative !important;
    overflow: visible !important;
    z-index: 300 !important;
  }
  .head > .inner {
    position: relative !important;
    overflow: visible !important;
  }
  .head nav {
    display: block !important;
    position: absolute !important;
    top: 100% !important;
    left: 50% !important;
    right: auto !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 1rem !important;
    box-sizing: border-box !important;
    background: #fff !important;
    box-shadow: 0 18px 40px rgba(27, 31, 38, .16) !important;
    max-height: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    overflow: hidden !important;
    transform: translateX(-50%) translateY(-8px) !important;
    pointer-events: none !important;
    transition:
      max-height .28s ease,
      opacity .22s ease,
      transform .22s ease,
      visibility .22s ease !important;
  }
  body.tero-mobile-nav-open .head nav {
    max-height: calc(100dvh - 90px) !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow-y: auto !important;
    transform: translateX(-50%) !important;
    pointer-events: auto !important;
  }
  .head nav .nav {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: .75rem !important;
    width: 100% !important;
    max-width: 430px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    list-style: none !important;
  }
  .head nav .nav > li {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .head nav .nav > li > a.button {
    width: 100% !important;
    box-sizing: border-box !important;
    justify-content: center !important;
    text-align: center !important;
  }
  .head nav .subnav,
  .head nav .showSub,
  .head nav .tero-header-external-icon {
    display: none !important;
  }
}
@media (max-width: 1200px) {
  .head nav .nav > li > a.button,
  .head nav .nav > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 46px !important;
    padding: 0.85rem 1.25rem !important;
    box-sizing: border-box !important;
    background:
      linear-gradient(
        90deg,
        var(--tero-button-color-start) 0%,
        var(--tero-button-color-middle) 100%) !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 6px !important;
    box-shadow: 0 10px 24px color-mix(in srgb, var(--tero-ci-red) 22%, transparent) !important;
    font-family: var(--font-body, Arial, sans-serif) !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
    transform: translateY(0) !important;
    transition:
      transform .18s ease,
      box-shadow .18s ease,
      filter .18s ease !important;
  }
  .head nav .nav > li > a.button::before,
  .head nav .nav > li > a.button::after,
  .head nav .nav > li > a::before,
  .head nav .nav > li > a::after {
    content: none !important;
    display: none !important;
  }
  .head nav .nav > li > a.button:hover,
  .head nav .nav > li > a.button:focus-visible,
  .head nav .nav > li > a:hover,
  .head nav .nav > li > a:focus-visible {
    background:
      linear-gradient(
        90deg,
        var(--tero-button-color-end) 0%,
        var(--tero-button-color-start) 100%) !important;
    color: #fff !important;
    box-shadow: 0 14px 28px color-mix(in srgb, var(--tero-ci-red) 28%, transparent) !important;
    transform: translateY(-1px) !important;
  }
  .head nav .nav > li > a.button:active,
  .head nav .nav > li > a:active {
    transform: translateY(0) !important;
    box-shadow: 0 7px 16px color-mix(in srgb, var(--tero-ci-red) 22%, transparent) !important;
  }
}
@media (max-width: 1200px) {
  .head {
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
    background: #fff !important;
    overflow: visible !important;
    box-shadow: 0 4px 18px rgba(27, 31, 38, .08);
  }
  .head > .inner {
    background: #fff !important;
  }
  .head nav {
    z-index: 1001 !important;
  }
}
.tero-header-controls {
  display: contents;
}
.tero-sticky-contact__mobile-icon {
  display: none;
}
.tero-sticky-contact__panel-logo {
  display: none;
}
@media (max-width: 1200px) {
  .head > .inner {
    gap: 1rem;
  }
  .tero-header-controls {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-left: auto;
    z-index: 1002;
  }
  .open_nav,
  .tero-sticky-contact,
  .tero-accessibility-sticky {
    box-sizing: border-box !important;
    flex: 0 0 48px !important;
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    margin: 0 !important;
  }
  .open_nav {
    align-items: center;
    justify-content: center;
    padding: 4px;
    border: 0;
    background: transparent;
  }
  .open_nav:focus-visible {
    outline: 3px solid var(--tero-ci-red);
    outline-offset: 2px;
  }
  .tero-sticky-contact,
  .tero-sticky-contact:is(.is-open, :hover, :focus-within),
  .tero-accessibility-sticky,
  .tero-accessibility-sticky:is(.is-open, :hover, :focus-within) {
    position: relative !important;
    inset: auto !important;
    overflow: visible !important;
    transform: none !important;
    border: 1px solid #d9dce1;
    border-radius: 10px;
  }
  .tero-sticky-contact__toggle {
    width: 48px;
    min-height: 48px;
    height: 48px;
    padding: 0 !important;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
  }
  .tero-sticky-contact__logo,
  .tero-sticky-contact__logo-fallback {
    display: none !important;
  }
  .tero-sticky-contact__mobile-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
  }
  .tero-sticky-contact__mobile-icon img {
    display: none;
    width: auto;
    height: auto;
    max-width: 26px;
    max-height: 26px;
  }
  .tero-sticky-contact__mobile-icon img:first-child {
    display: block;
  }
  .tero-sticky-contact__list {
    position: absolute;
    top: calc(100% + 10px);
    right: -56px;
    display: block;
    box-sizing: border-box;
    width: min(330px, calc(100vw - 32px));
    max-width: calc(100vw - 32px);
    max-height: calc(100dvh - 96px);
    padding: 14px 0;
    overflow-x: hidden;
    overflow-y: auto;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    background: #fff;
    border: 1px solid #d9dce1;
    border-radius: 10px;
    box-shadow: var(--tero-shadow);
    transform: translateY(-8px);
    transition:
      opacity .22s ease,
      transform .22s ease,
      visibility .22s ease;
  }
  .tero-sticky-contact.is-open .tero-sticky-contact__list {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }
  .tero-sticky-contact__item {
    width: 100%;
  }
  .tero-sticky-contact__panel-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 78px;
    padding: 4px 16px 14px;
  }
  .tero-sticky-contact__panel-logo img {
    display: block;
    width: 125px;
    max-width: 100%;
    max-height: 72px;
    object-fit: contain;
  }
  .tero-sticky-contact__panel-logo span {
    color: var(--tero-ci-red);
    font-family: var(--font-head);
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .04em;
  }
  .tero-sticky-contact__link {
    width: 100%;
    min-height: 48px;
  }
  .tero-sticky-contact__icon {
    flex-basis: 48px;
    width: 48px;
    height: 48px;
  }
  .tero-sticky-contact__label {
    opacity: 1;
    visibility: visible;
    transform: none;
  }
  .tero-accessibility-sticky__trigger {
    width: 48px;
    height: 48px;
    border-radius: 9px;
  }
  .tero-accessibility-sticky__panel {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    box-sizing: border-box;
    width: min(340px, calc(100vw - 32px));
    max-width: calc(100vw - 32px);
    max-height: calc(100dvh - 96px);
    padding: 18px;
    overflow-y: auto;
    background: #fff;
    border: 1px solid #d9dce1;
    border-radius: 10px;
    box-shadow: var(--tero-shadow);
  }
  .tero-accessibility-sticky:not(.is-open) .tero-accessibility-sticky__panel {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(8px);
  }
  .tero-accessibility-sticky.is-open .tero-accessibility-sticky__panel {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }
  body[data-accessibility-dark=true] .tero-sticky-contact__list,
  body[data-accessibility-dark=true] .tero-accessibility-sticky__panel {
    background: var(--tero-dark-surface, #1b1f26);
    border-color: var(--tero-dark-border, #3a404a);
  }
}
@media (max-width: 520px) {
  .head > .inner {
    gap: .5rem;
  }
  .head > .inner .logo {
    width: min(120px, 32vw);
  }
  .tero-header-controls {
    gap: 4px;
  }
  .open_nav,
  .tero-sticky-contact,
  .tero-accessibility-sticky {
    flex-basis: 44px !important;
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
  }
  .tero-sticky-contact__toggle,
  .tero-accessibility-sticky__trigger {
    width: 44px;
    height: 44px;
    min-height: 44px;
  }
  .hamburger,
  .hamburger-box {
    width: 32px;
  }
  .hamburger-inner,
  .hamburger-inner::before,
  .hamburger-inner::after {
    width: 32px;
  }
  .tero-sticky-contact__list {
    right: -48px;
  }
}

/* Resources/Public/Css/overrides/27-mobile-header-roofline-decoration-hide.css */
@media (max-width: 767px) {
  :is(.roofline, p[class*=roofline], [class*=_roofline], [class*=__roofline], .textpicture_roofline, .faq_roofline)::before,
  :is(.roofline, p[class*=roofline], [class*=_roofline], [class*=__roofline], .textpicture_roofline, .faq_roofline)::after {
    content: none !important;
    display: none !important;
  }
}

/* Resources/Public/Css/overrides/28-mobile-jobfinder-scroll.css */
@media (max-width: 767px) {
  .tero-jobfinder-search,
  .tero-jobfinder-filters {
    position: static !important;
    top: auto !important;
  }
  .tero-jobfinder-layout {
    display: block !important;
    width: calc(100% - 24px) !important;
    max-width: none !important;
    padding-bottom: 3rem !important;
  }
  .tero-jobfinder-results__scroll {
    max-height: none !important;
    min-height: 0 !important;
    height: auto !important;
    overflow-y: visible !important;
    overscroll-behavior: auto !important;
    scrollbar-width: auto !important;
  }
  .tero-jobfinder-card {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 1rem !important;
  }
  .tero-jobfinder-card .button {
    width: 100% !important;
    text-align: center !important;
  }
}
@media (max-width: 767px) {
  .tero-jobfinder-mobile-backfilter {
    position: fixed;
    right: 14px;
    bottom: 18px;
    z-index: 950;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    max-width: calc(100vw - 28px);
    padding: 0.8rem 1.05rem;
    border: 0;
    border-radius: 999px;
    background:
      linear-gradient(
        90deg,
        var(--tero-button-color-start) 0%,
        var(--tero-button-color-middle) 100%);
    color: #fff;
    box-shadow: 0 10px 24px color-mix(in srgb, var(--tero-ci-red) 26%, transparent);
    font: inherit;
    font-size: 0.9rem;
    font-weight: 800;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    transition:
      transform .18s ease,
      box-shadow .18s ease,
      filter .18s ease;
  }
  .tero-jobfinder-mobile-backfilter[hidden] {
    display: none !important;
  }
  .tero-jobfinder-mobile-backfilter:hover,
  .tero-jobfinder-mobile-backfilter:focus-visible {
    background:
      linear-gradient(
        90deg,
        var(--tero-button-color-end) 0%,
        var(--tero-button-color-start) 100%);
    box-shadow: 0 14px 28px color-mix(in srgb, var(--tero-ci-red) 32%, transparent);
    transform: translateY(-1px);
  }
  .tero-jobfinder-mobile-backfilter:active {
    transform: translateY(0);
    box-shadow: 0 7px 16px color-mix(in srgb, var(--tero-ci-red) 24%, transparent);
  }
}
@media (max-width: 767px) {
  .tero-jobfinder-mobile-backfilter {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    max-width: 52px !important;
    padding: 0 !important;
    border-radius: 999px !important;
    font-size: 1.75rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
  }
  .tero-jobfinder-mobile-backfilter:not([hidden]) {
    animation: tero-jobfinder-mobile-backfilter-pop .28s cubic-bezier(.2, 1.45, .35, 1);
  }
  @keyframes tero-jobfinder-mobile-backfilter-pop {
    0% {
      opacity: 0;
      transform: scale(.72) translateY(10px);
    }
    70% {
      opacity: 1;
      transform: scale(1.08) translateY(0);
    }
    100% {
      opacity: 1;
      transform: scale(1) translateY(0);
    }
  }
}

/* Resources/Public/Css/overrides/29-mobile-jobdetail-actions.css */
@media (max-width: 767px) {
  .tero-job-detail-actions:not([hidden]) {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0.85rem !important;
  }
  .tero-job-detail-actions .button[data-job-apply] {
    order: 1 !important;
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }
  .tero-job-detail-actions .tero-job-detail-chatbot-application {
    order: 2 !important;
    width: 100% !important;
  }
  .tero-job-detail-actions .tero-job-detail-chatbot-application .button {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }
  .tero-job-detail-actions .tero-job-detail-backlink {
    order: 99 !important;
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }
}

/* Resources/Public/Css/overrides/30-mobile-jobcontact-card.css */
@media (max-width: 767px) {
  .tero-job-contact-box__card,
  .tero-job-contact-box__card.has-contact-image {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(118px, 0.82fr) !important;
    grid-template-areas: "media communication" "content communication" "content qr" !important;
    gap: 0.85rem 0.9rem !important;
    align-items: start !important;
    text-align: left !important;
  }
  .tero-job-contact-box__media {
    grid-area: media !important;
    justify-self: start !important;
    align-self: start !important;
    margin: 0 !important;
  }
  .tero-job-contact-box__content {
    grid-area: content !important;
    justify-self: stretch !important;
    align-self: start !important;
    text-align: left !important;
    min-width: 0 !important;
  }
  .tero-job-contact-box__communication {
    grid-area: communication !important;
    justify-self: stretch !important;
    align-self: start !important;
    text-align: left !important;
    min-width: 0 !important;
    padding-top: 0 !important;
  }
  .tero-job-contact-box__qr {
    grid-area: qr !important;
    justify-self: start !important;
    align-self: start !important;
    margin-top: 0.2rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  .tero-job-contact-box__links {
    display: grid !important;
    gap: 0.65rem !important;
    justify-content: stretch !important;
    text-align: left !important;
  }
  .tero-job-contact-box__links li {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
  }
  .tero-job-contact-box__links a {
    overflow-wrap: anywhere !important;
  }
}
@media (max-width: 390px) {
  .tero-job-contact-box__card,
  .tero-job-contact-box__card.has-contact-image {
    grid-template-columns: 1fr !important;
    grid-template-areas: "media" "content" "communication" "qr" !important;
  }
  .tero-job-contact-box__media,
  .tero-job-contact-box__qr {
    justify-self: center !important;
  }
  .tero-job-contact-box__content,
  .tero-job-contact-box__communication,
  .tero-job-contact-box__links {
    text-align: center !important;
  }
}
@media (max-width: 767px) {
  .tero-job-contact-box__links,
  .tero-job-contact-box__links li {
    list-style: none !important;
  }
  .tero-job-contact-box__links {
    padding-left: 0 !important;
    margin-left: 0 !important;
  }
  .tero-job-contact-box__links li::marker,
  .tero-job-contact-box__links li::before,
  .tero-job-contact-box__links li::after {
    content: none !important;
    display: none !important;
  }
}

/* Resources/Public/Css/tero-site.css */
#c127,
#c198,
#c128,
#c518,
#c209,
#c99,
#c519 {
  display: flow-root !important;
}
#c127,
#c198,
#c128,
#c518,
#c99 {
  margin-bottom: 0 !important;
}
#c198,
#c128,
#c518,
#c209,
#c519 {
  margin-top: 0 !important;
}
#c127.frame-space-after-extra-small,
#c127.frame-space-after-small,
#c127.frame-space-after-medium,
#c127.frame-space-after-large,
#c127.frame-space-after-extra-large,
#c198.frame-space-before-extra-small,
#c198.frame-space-before-small,
#c198.frame-space-before-medium,
#c198.frame-space-before-large,
#c198.frame-space-before-extra-large,
#c518.frame-space-before-extra-small,
#c518.frame-space-before-small,
#c518.frame-space-before-medium,
#c518.frame-space-before-large,
#c518.frame-space-before-extra-large,
#c518.frame-space-after-extra-small,
#c518.frame-space-after-small,
#c518.frame-space-after-medium,
#c518.frame-space-after-large,
#c518.frame-space-after-extra-large,
#c519.frame-space-before-extra-small,
#c519.frame-space-before-small,
#c519.frame-space-before-medium,
#c519.frame-space-before-large,
#c519.frame-space-before-extra-large {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
#c127 > *:last-child,
#c198 > *:last-child,
#c128 > *:last-child,
#c518 > *:last-child,
#c99 > *:last-child {
  margin-bottom: 0 !important;
}
#c198 > *:first-child,
#c128 > *:first-child,
#c518 > *:first-child,
#c209 > *:first-child,
#c519 > *:first-child {
  margin-top: 0 !important;
}
#c128.tero-flexible-hoverbar {
  margin-top: -96px !important;
}
#c518.tero-text-info-card {
  margin-top: -96px !important;
  margin-bottom: 0 !important;
}
#c209.tero-location-team,
#c209.tero-team-group-new {
  margin-top: 0 !important;
}
#c128,
#c518,
#c209 {
  margin-bottom: 0 !important;
}
#c128 > *:first-child,
#c518 > *:first-child,
#c209 > *:first-child {
  margin-top: 0 !important;
}
#c515.tero-location-maps .tero-location-maps__map-card,
#c516.tero-location-maps .tero-location-maps__map-card,
#c517.tero-location-maps .tero-location-maps__map-card {
  height: 347px !important;
  min-height: 347px !important;
}
#c515.tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap],
#c516.tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap],
#c517.tero-location-maps .tero-location-maps__map-card > [class*=map_image_wrap],
#c515.tero-location-maps .tero-map-consent,
#c516.tero-location-maps .tero-map-consent,
#c517.tero-location-maps .tero-map-consent,
#c515.tero-location-maps .tero-location-maps__map-card iframe,
#c516.tero-location-maps .tero-location-maps__map-card iframe,
#c517.tero-location-maps .tero-location-maps__map-card iframe {
  height: 100% !important;
  min-height: 0 !important;
}
#c515.tero-location-maps .tero-location-maps__route-button,
#c516.tero-location-maps .tero-location-maps__route-button,
#c517.tero-location-maps .tero-location-maps__route-button {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
}
#c515.tero-location-maps .tero-location-maps__route-button::after,
#c516.tero-location-maps .tero-location-maps__route-button::after,
#c517.tero-location-maps .tero-location-maps__route-button::after {
  content: none !important;
  display: none !important;
  background: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
}
#c515.tero-location-maps .tero-location-maps__route-external-icon,
#c516.tero-location-maps .tero-location-maps__route-external-icon,
#c517.tero-location-maps .tero-location-maps__route-external-icon {
  display: inline-block !important;
  line-height: 1 !important;
  font-size: 1em !important;
  font-weight: inherit !important;
  transform: translateY(-1px) !important;
}
#c515.tero-location-maps .tero-location-maps__route-button,
#c516.tero-location-maps .tero-location-maps__route-button,
#c517.tero-location-maps .tero-location-maps__route-button {
  width: fit-content !important;
  min-width: 0 !important;
  max-width: max-content !important;
  padding: 12px 22px !important;
  gap: 8px !important;
  white-space: nowrap !important;
}
#c515.tero-location-maps .tero-location-maps__route-external-icon,
#c516.tero-location-maps .tero-location-maps__route-external-icon,
#c517.tero-location-maps .tero-location-maps__route-external-icon {
  margin-left: 2px !important;
  font-size: .95em !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
}
html body #c109 span.handwritten,
html body #c111 span.handwritten,
html body #c116 span.handwritten,
html body footer.foot .foot-top span.handwritten,
html body footer.foot.foot-new .foot-newsletter-cta__highlight {
  font-family:
    "Shadows Into Light",
    "Segoe Print",
    "Comic Sans MS",
    cursive !important;
}
@font-face {
  font-family: "Shadows Into Light";
  src: url("./assets/shadows-into-light-OOZCFIJE.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
html body[data-accessibility-dark=true] .head .nav a {
  color: #f4f5f7 !important;
}
html body[data-accessibility-dark=true] .head .nav li:hover > a,
html body[data-accessibility-dark=true] .head .nav li:focus-within > a {
  color: var(--tero-ci-red) !important;
}
html body[data-accessibility-dark=true] .redboxcta a:not(.button):not([class*=button]),
html body[data-accessibility-dark=true] [class*=redbox] a:not(.button):not([class*=button]),
html body[data-accessibility-dark=true] [class*=cta] a:not(.button):not([class*=button]) {
  color: #ffffff !important;
  text-decoration-color: rgba(255, 255, 255, .8) !important;
}
html body[data-accessibility-dark=true] .roofline::before,
html body[data-accessibility-dark=true] .roofline::after,
html body[data-accessibility-dark=true] .textpicture_roofline::before,
html body[data-accessibility-dark=true] .textpicture_roofline::after,
html body[data-accessibility-dark=true] [class*=__roofline]::before,
html body[data-accessibility-dark=true] [class*=__roofline]::after {
  background-color: #747b86 !important;
  border-color: #747b86 !important;
}
html body[data-accessibility-dark=true] #c109 .roofline::before,
html body[data-accessibility-dark=true] #c109 .roofline::after,
html body[data-accessibility-dark=true] #c109 .textpicture_roofline::before,
html body[data-accessibility-dark=true] #c109 .textpicture_roofline::after,
html body[data-accessibility-dark=true] #c109 [class*=roofline]::before,
html body[data-accessibility-dark=true] #c109 [class*=roofline]::after {
  content: none !important;
  display: none !important;
}
html body[data-accessibility-dark=true] [class*=instagram]:not(iframe) {
  background-color: #1b1f26 !important;
  border-color: rgba(255, 255, 255, .14) !important;
}
html body[data-accessibility-dark=true] [class*=roofline] {
  position: relative !important;
  overflow: visible !important;
  isolation: isolate !important;
  z-index: 1 !important;
}
html body[data-accessibility-dark=true] [class*=roofline]::before,
html body[data-accessibility-dark=true] [class*=roofline]::after {
  content: "" !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  z-index: -1 !important;
  background-color: #747b86 !important;
  border-color: #747b86 !important;
}
html body[data-accessibility-dark=true] #c109 [class*=roofline]::before,
html body[data-accessibility-dark=true] #c109 [class*=roofline]::after,
html body[data-accessibility-dark=true] [class*=decoration-hidden]::before,
html body[data-accessibility-dark=true] [class*=decoration-hidden]::after {
  content: none !important;
  display: none !important;
}
html body[data-accessibility-dark=true] #tero-chatbot .tero-chatbot__app {
  background-color: #1b1f26 !important;
}
html body[data-accessibility-dark=true] .tero-job-detail .tero-job-detail-hero > .roofline::before,
html body[data-accessibility-dark=true] .tero-job-detail .tero-job-detail-hero > .roofline::after,
html body[data-accessibility-dark=true] .tero-job-detail-hero > p.roofline::before,
html body[data-accessibility-dark=true] .tero-job-detail-hero > p.roofline::after {
  content: none !important;
  display: none !important;
}
html body[data-accessibility-dark=true] .tero-newsletter-popup {
  background: rgba(17, 19, 23, .68) !important;
  backdrop-filter: blur(2px) !important;
}
html body[data-accessibility-dark=true] .tero-newsletter-popup__box {
  background: #1b1f26 !important;
  color: #f4f5f7 !important;
  border: 1px solid rgba(255, 255, 255, .14) !important;
  box-shadow: 0 18px 48px rgba(0, 0, 0, .42) !important;
}
html body:not([data-accessibility-dark=true]) .tero-newsletter-popup {
  background: rgba(17, 19, 23, .32) !important;
  -webkit-backdrop-filter: blur(2px) !important;
  backdrop-filter: blur(2px) !important;
}
a.button.tero-thankyou__button,
.tero-thankyou__button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 50px !important;
  min-width: 140px !important;
  padding: 0 26px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background-color: var(--tero-button-color-start) !important;
  background-image: var(--tero-button-gradient) !important;
  color: #ffffff !important;
  font-family: var(--font-body, "Lato", Verdana, Arial, sans-serif) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: color-mix(in srgb, var(--tero-ci-red) 18%, transparent) 0px 12px 26px 0px, rgba(0, 0, 0, 0.08) 0px 5px 14px 0px !important;
  cursor: pointer !important;
  transition:
    transform .18s ease,
    box-shadow .18s ease,
    filter .18s ease !important;
}
a.button.tero-thankyou__button:hover,
a.button.tero-thankyou__button:focus-visible,
.tero-thankyou__button:hover,
.tero-thankyou__button:focus-visible {
  color: #ffffff !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
  filter: brightness(1.03) !important;
  box-shadow: color-mix(in srgb, var(--tero-ci-red) 24%, transparent) 0px 15px 30px 0px, rgba(0, 0, 0, 0.1) 0px 6px 16px 0px !important;
}
a.button.tero-thankyou__button::before,
a.button.tero-thankyou__button::after,
.tero-thankyou__button::before,
.tero-thankyou__button::after {
  content: none !important;
  display: none !important;
  background: none !important;
  background-image: none !important;
}
html body[data-accessibility-dark=true] #c113 :is([class*=hover], [class*=overlay], [class*=caption]) {
  background-color: #20242c !important;
  background-image: none !important;
  color: #f4f5f7 !important;
}
html body[data-accessibility-dark=true] #c113 :is([class*=hover], [class*=overlay], [class*=caption]) * {
  color: #f4f5f7 !important;
}
.tero-jobfinder-filter input[type=checkbox],
.tero-jobfinder-filter input[type=radio] {
  accent-color: var(--tero-ci-red);
}
.tero-jobfinder-filter--dropdown {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 12px;
  padding: 0;
  overflow: hidden;
}
.tero-jobfinder-filter__summary {
  cursor: pointer;
  font-weight: 700;
  padding: 12px 14px;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #fff;
  color: inherit;
}
.tero-jobfinder-filter__summary::-webkit-details-marker {
  display: none;
}
.tero-jobfinder-filter__summary::after {
  content: "+";
  font-weight: 700;
}
.tero-jobfinder-filter--dropdown[open] .tero-jobfinder-filter__summary::after {
  content: "\2013";
}
.tero-jobfinder-filter__options {
  display: grid;
  gap: 8px;
  padding: 0 14px 14px;
  background: #fff;
}
.tero-jobfinder-filter__options label {
  display: flex;
  align-items: center;
  gap: 8px;
  line-height: 1.35;
}
.tero-jobfinder-filter--reset {
  padding: 0;
  border: 0;
  background: transparent;
}
.tero-jobfinder-filter--reset .tero-jobfinder-reset.button {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  min-height: 46px;
  padding: 13px 22px;
  border: 0;
  border-radius: 8px;
  background-image: var(--tero-button-gradient);
  background-position: left center;
  background-size: 200% auto;
  box-shadow: 0 12px 26px color-mix(in srgb, var(--tero-ci-red) 18%, transparent), 0 5px 14px rgba(0, 0, 0, .08);
  color: #fff;
  font-weight: 900;
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer;
  transition:
    background-position .35s ease,
    box-shadow .2s ease,
    transform .12s ease,
    filter .2s ease;
}
.tero-jobfinder-filter--reset .tero-jobfinder-reset.button::after {
  content: none;
  display: none;
}
.tero-jobfinder-filter--reset .tero-jobfinder-reset.button:not(:disabled):hover,
.tero-jobfinder-filter--reset .tero-jobfinder-reset.button:not(:disabled):focus-visible {
  background-position: right center;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--tero-ci-red) 18%, transparent), 0 6px 16px rgba(0, 0, 0, .07);
  filter: brightness(1.03);
}
.tero-jobfinder-filter--reset .tero-jobfinder-reset.button:not(:disabled):active {
  transform: scale(.98);
}
.tero-jobfinder-filter input[data-job-sort-radio],
.tero-jobfinder-filter input[data-job-filter] {
  appearance: none;
  -webkit-appearance: none;
  box-sizing: border-box;
  inline-size: 18px;
  block-size: 18px;
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
  max-width: 18px;
  max-height: 18px;
  aspect-ratio: 1 / 1;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(0, 0, 0, 0.35);
  border-radius: 3px;
  background: #fff;
  display: inline-grid;
  place-items: center;
  flex: 0 0 18px;
  cursor: pointer;
}
.tero-jobfinder-filter input[data-job-sort-radio]::before {
  content: "";
  box-sizing: border-box;
  inline-size: 10px;
  block-size: 10px;
  width: 10px;
  height: 10px;
  border-radius: 2px;
  background: var(--tero-ci-red);
  transform: scale(0);
  transition: transform 120ms ease-in-out;
}
.tero-jobfinder-filter input[data-job-sort-radio]:checked {
  border-color: var(--tero-ci-red);
}
.tero-jobfinder-filter input[data-job-sort-radio]:checked::before {
  transform: scale(1);
}
.tero-jobfinder-filter input[data-job-filter]:checked {
  border-color: var(--tero-ci-red);
  background: var(--tero-ci-red);
}
.tero-jobfinder-filter input[data-job-filter]::before {
  content: "";
  width: 5px;
  height: 9px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(45deg) scale(0);
  margin-top: -2px;
  transition: transform 120ms ease-in-out;
}
.tero-jobfinder-filter input[data-job-filter]:checked::before {
  transform: rotate(45deg) scale(1);
}
.tero-jobfinder-filter input[data-job-sort-radio]:focus-visible,
.tero-jobfinder-filter input[data-job-filter]:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--tero-ci-red) 35%, transparent);
  outline-offset: 2px;
}
body[data-accessibility-dark=true] .frame-type-pxtero_googlemap .map-placeholder.tero-map-consent:not(.is-loaded),
body[data-accessibility-dark=true] .tero-location-maps .tero-map-consent:not(.is-loaded) {
  color: var(--tero-dark-text, #f4f5f7) !important;
  background: var(--tero-dark-surface-2, #252a32) !important;
  background-image: none !important;
  border-color: var(--tero-dark-border, #3a404a) !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, .30) !important;
}
body[data-accessibility-dark=true] .frame-type-pxtero_googlemap .map-placeholder.tero-map-consent:not(.is-loaded) :is(.tero-map-consent__content, .tero-map-consent__content p, .tero-map-consent__content strong),
body[data-accessibility-dark=true] .tero-location-maps .tero-map-consent:not(.is-loaded) :is(.tero-map-consent__content, .tero-map-consent__content p, .tero-map-consent__content strong) {
  color: var(--tero-dark-text, #f4f5f7) !important;
}
html body[data-accessibility-dark=true] .tero-location-maps .map-placeholder.tero-map-consent:not(.is-loaded) {
  background: var(--tero-dark-surface-2, #252a32) !important;
  background-color: var(--tero-dark-surface-2, #252a32) !important;
  background-image: none !important;
  color: var(--tero-dark-text, #f4f5f7) !important;
  border-color: var(--tero-dark-border, #3a404a) !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, .30) !important;
}
html body[data-accessibility-dark=true] .tero-location-maps .map-placeholder.tero-map-consent:not(.is-loaded) .tero-map-consent__content,
html body[data-accessibility-dark=true] .tero-location-maps .map-placeholder.tero-map-consent:not(.is-loaded) .tero-map-consent__content p,
html body[data-accessibility-dark=true] .tero-location-maps .map-placeholder.tero-map-consent:not(.is-loaded) .tero-map-consent__content strong {
  color: var(--tero-dark-text, #f4f5f7) !important;
}
.foot a:focus-visible,
.foot button:focus-visible,
.foot-new a:focus-visible,
.foot-new button:focus-visible,
.redboxcta a:focus-visible,
.redboxcta button:focus-visible {
  outline: 3px solid #fff !important;
  outline-offset: 3px;
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.35);
}
.tero-jobfinder-filter--dropdown:not([open]):has(> .tero-jobfinder-filter__summary:focus-visible),
.tero-jobfinder-filter--dropdown[open]:focus-within {
  border-color: var(--tero-ci-red);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--tero-ci-red) 28%, transparent);
}
.tero-jobfinder-filter--dropdown:not([open]) > .tero-jobfinder-filter__summary:focus-visible {
  outline: none;
}
.tero-newsletter-popup[hidden] {
  display: none !important;
}
.tero-jobfinder-filter__options label {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  hyphens: auto;
}
.tero-jobfinder-filter__options label > input {
  flex: 0 0 auto;
  margin-top: 0.2em;
}
