@charset "UTF-8";
/*! Created by Say Hello GmbH (Switzerland), hello@sayhello.ch */
/*

This stylesheet was generated using Sass (http://sass-lang.com).
Original files can be found inside the /.build/assets/styles/ folder inside the main folder of this project.

The structure follows the principles of ITCSS (http://www.creativebloq.com/web-design/manage-large-css-projects-itcss-101517528)

*/
/**
 * Use in order to make a set of rules only apply above
 * or below a certain breakpoint.
 * Standard usage:

 @include breakpoint(tablet){
 	// Applies to screen sizes tablet and LARGER
 }

 @include breakpoint(tablet up){
 	// Applies to screen sizes tablet and LARGER
 }

 @include breakpoint(tablet down){
 	// Applies to screen sizes tablet and SMALLER
 }
 *
 **/
/**
 * Set custom typography sizes (e.g. header)
 * @param  {int} $size        font-size
 * @param  {int} $line-height line-height
 * @param  {int} $av          AV letter-spacing from XD
 * @return {void}
 */
/**
 * Converts a pixel, percentage, rem or em value to a unitless value based on a given font size. Ideal for working out unitless line heights.
 *
 * @param {Number} $value - Value to convert to a unitless line height
 * @param {Number} $base - The font size to use to work out the line height - defaults to $rem-font-size
 *
 * @return {Number} - Unitless number
 */
/**
 * AV letter spacing measurement convertor from Adobe applications
 * https://scotch.io/tutorials/converting-photoshop-letter-spacing-to-css
 */
:root {
  --unit-xxsmall: calc(var(--unit) / 8);
  --unit-xsmall: calc(var(--unit) / 4);
  --unit-small: calc(var(--unit) / 2);
  --unit-medium: calc(var(--unit) * 2);
  --unit-large: calc(var(--unit) * 4);
  --unit-xlarge: calc(var(--unit) * 6);
  --unit-xxlarge: calc(var(--unit) * 8);
  --unit-xxxlarge: calc(var(--unit) * 10);
  --unit: 1rem;
  --grid-gap: 20px;
  --grid-gap-medium: 30px;
  --grid-gap-large: 40px;
  --grid-gap-xlarge: 60px;
  --grid-gap-half: calc(var(--unit-medium) / 2);
  --grid-gap-h: 5vw;
  --grid-gap-h-medium: 4vw;
  --grid-gap-h-small: 2.5vw;
  --arrow-bottom-gap: 1rem;
}
@media screen and (max-width: 41.68125em) {
  :root {
    --grid-gap-h: 12vw;
    --grid-gap-h-small: 6vw;
  }
}

@keyframes spinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
* {
  box-sizing: border-box;
}
*:after, *:before {
  box-sizing: border-box;
}

button {
  padding: 0;
  border: none;
  background-color: transparent;
  line-height: inherit;
}

/* normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default padding */
ul,
ol {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
li,
figure,
figcaption,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  scroll-behavior: smooth;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  max-width: 100%;
  display: block;
}

/* Natural flow and rhythm in articles by default */
/*article > * + * {
  margin-top: 1em;
}*/
/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
:root {
  --c-constraint-padding-side-v: 20px;
  --c-constraint-padding-side: 25px;
  --constraint-full: calc(100% - var(--c-constraint-padding-side) * 2);
  --constraint-wide: 62.5rem;
  --constraint-full-narrow: calc(100% - var(--c-constraint-padding-side) * 4);
  --constraint-content-large: 1200px;
  --constraint-content: 1000px;
  --constraint-medium: 620px;
  --constraint-small: 600px;
}
@media screen and (max-width: 79.99375em) {
  :root {
    --constraint-content: 900px;
    --constraint-medium: 750px;
  }
}
:root .editor-styles-wrapper {
  --constraint-narrow: var(--constraint-content);
  --constraint-content: 800px;
  --constraint-medium: 610px;
}

/*
 * https://every-layout.dev/layouts/stack/
 */
:root {
  --body-color: var(--color-primary);
  --body-background-color: var(--color-white);
  --selection-color: var(--color-white);
  --selection-background-color: var(--color-black);
}

body {
  color: var(--body-color);
  background-color: var(--body-background-color);
}

::selection {
  color: var(--selection-color);
  background-color: var(--selection-background-color);
}

[id] {
  scroll-snap-margin-top: var(--unit);
  scroll-margin-top: var(--unit);
}

body {
  overflow-x: hidden;
}

iframe {
  max-width: 100% !important;
}

img {
  max-width: 100% !important;
  height: auto;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  font-variant-numeric: tabular-name;
}

.responsive-table {
  max-width: 100%;
  overflow-x: auto;
}
.responsive-table table {
  min-width: 600px;
}

:root {
  --font-family: Europa, sans-serif;
  --font-family-heading: Europa, sans-serif;
  --line-height: 1.5;
  --line-height-small: 1.2;
  --line-height-heading: var(--line-height-small);
  --font-weight-normal: 400;
  --radius: 0;
  --font-size-rem-base: 16px;
  --font-size-xsmall: 0.75rem;
  --font-size-small: 0.875rem;
  --font-size-regular: 1rem;
  --font-size-medium: 1.125rem;
  --font-size-large: 1.5rem;
  --font-size-xlarge: 1.5rem;
  --font-size-h1: clamp(1.802rem, 1.445rem + 1.7853vi, 3.0518rem);
  --font-size-h2: clamp(1.802rem, 1.445rem + 1.7853vi, 3.0518rem);
  --font-size-h3: 1.5rem;
  --font-size-h4: 1.5rem;
  --font-size-h5: 1.125rem;
  --font-size-h6: 1.125rem;
}

body {
  font-family: var(--font-family);
  font-weight: 400;
  line-height: var(--line-height);
  font-size: 1rem;
}

abbr,
acronym {
  cursor: help;
}

a,
button {
  transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

button {
  text-decoration: none;
}

blockquote {
  margin: 0;
}

button {
  text-decoration: none;
}

cite {
  display: block;
}

code {
  background-color: var(--color-gray-light);
  display: inline-block;
  padding: 0.0625em 0.25em;
}

dd + dt {
  margin-top: var(--unit);
}

dt {
  font-weight: 700;
}

figure,
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

figure {
  margin: 0;
}
figure > a {
  border-bottom: none;
}

figcaption {
  font-size: var(--font-size-small);
  text-align: center;
  color: var(--color-gray);
}

hr {
  border-style: solid;
  border-width: 0 0 1px;
  border-color: var(--wp-block-separator-color);
}

ol ol {
  margin-top: var(--unit-small);
  padding-left: 1.2em;
}

ul {
  box-sizing: border-box;
  padding-left: 1em;
  list-style: disc;
}
nav li,
nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
nav a {
  text-decoration: none;
}

p:empty {
  display: none;
}
p.has-background {
  padding: var(--unit);
}

q {
  font-style: italic;
}

sub,
sup {
  font-size: var(--font-size-xsmall);
  -webkit-font-smoothing: subpixel-antialiased;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

input,
li,
p,
tr {
  font-size: 1em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-family-heading);
  line-height: var(--line-height-heading);
  margin: 0;
  word-break: break-word;
  text-wrap: balance;
}
h1 a,
h1 a:active,
h1 a:hover,
h2 a,
h2 a:active,
h2 a:hover,
h3 a,
h3 a:active,
h3 a:hover,
h4 a,
h4 a:active,
h4 a:hover,
h5 a,
h5 a:active,
h5 a:hover,
h6 a,
h6 a:active,
h6 a:hover {
  text-decoration: none;
  color: currentColor;
}

h1 {
  font-size: var(--font-size-h1);
}
h1.is-style-small-text {
  font-size: calc(var(--font-size-h1) * 0.9);
}
h1.is-style-large-text {
  font-size: calc(var(--font-size-h1) * 1.2);
}
h1.is-style-xlarge-text {
  font-size: calc(var(--font-size-h1) * 1.4);
}

h2 {
  font-size: var(--font-size-h2);
}
h2.is-style-small-text {
  font-size: calc(var(--font-size-h2) * 0.9);
}
h2.is-style-large-text {
  font-size: calc(var(--font-size-h2) * 1.2);
}
h2.is-style-xlarge-text {
  font-size: calc(var(--font-size-h2) * 1.4);
}

h3 {
  font-size: var(--font-size-h3);
}
h3.is-style-small-text {
  font-size: calc(var(--font-size-h3) * 0.9);
}
h3.is-style-large-text {
  font-size: calc(var(--font-size-h3) * 1.2);
}
h3.is-style-xlarge-text {
  font-size: calc(var(--font-size-h3) * 1.4);
}

h4 {
  font-size: var(--font-size-h4);
}
h4.is-style-small-text {
  font-size: calc(var(--font-size-h4) * 0.9);
}
h4.is-style-large-text {
  font-size: calc(var(--font-size-h4) * 1.2);
}
h4.is-style-xlarge-text {
  font-size: calc(var(--font-size-h4) * 1.4);
}

h5 {
  font-size: var(--font-size-h5);
}
h5.is-style-small-text {
  font-size: calc(var(--font-size-h5) * 0.9);
}
h5.is-style-large-text {
  font-size: calc(var(--font-size-h5) * 1.2);
}
h5.is-style-xlarge-text {
  font-size: calc(var(--font-size-h5) * 1.4);
}

h6 {
  font-size: var(--font-size-h6);
}
h6.is-style-small-text {
  font-size: calc(var(--font-size-h6) * 0.9);
}
h6.is-style-large-text {
  font-size: calc(var(--font-size-h6) * 1.2);
}
h6.is-style-xlarge-text {
  font-size: calc(var(--font-size-h6) * 1.4);
}

/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  clip: auto !important;
  clip-path: none;
  color: var(--color-black);
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

a,
button {
  color: var(--color-link);
}
a:active, a:hover,
button:active,
button:hover {
  color: var(--color-link-hover);
}

.gform-theme--api,
.gform-theme--framework {
  --gf-ctrl-btn-font-size-md: 1em;
  --gf-font-size-primary: 1em;
  --gf-ctrl-label-font-size-tertiary: 0.944444em;
}

video {
  max-width: 100%;
}

:root {
  --button-color-primary: var(--color-white);
  --button-background-color-primary: var(--color-primary);
  --button-color-primary-hover: var(--color-white);
  --button-background-color-primary-hover: var(--color-primary-dark);
  --button-font-size: 1em;
  --button-font-size-small: 0.8em;
  --button-font-size-large: 1.2em;
  --button-padding: 0.35em 1em;
  --button-radius: 3px;
}

.o-button {
  transition: all 300ms ease, box-shadow 150ms ease;
  -webkit-user-select: none;
          user-select: none;
  display: inline-block;
  text-decoration: none;
  border: 1px solid;
  padding: var(--button-padding);
  border-radius: var(--button-radius);
  text-align: center;
  font-size: var(--button-font-size);
}
.o-button:not(.has-background) {
  background-color: var(--button-background-color);
  border-color: var(--button-background-color);
}
.o-button:not(.has-text-color) {
  color: var(--button-color);
}
.is-style-outline .o-button {
  background-color: transparent;
  border-color: currentColor;
  border-width: 1px;
}
.is-style-outline .o-button:not(.has-text-color) {
  color: var(--button-color-primary);
}
.o-button:active, .o-button:hover {
  filter: saturate(0.8);
}

.o-button--size-small {
  font-size: var(--button-font-size-small);
}
.o-button--size-large {
  font-size: var(--button-font-size-large);
}

:root {
  --o-lazyimage-transition-duration: 350ms;
  --o-lazyimage-preview-opacity: 0.5;
}

.o-lazyimage {
  display: inline-block;
  position: relative;
}
.o-lazyimage__image {
  display: block;
  position: relative;
  opacity: 0;
  transition: opacity 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition-duration: var(--o-lazyimage-transition-duration);
}
.o-lazyimage__image--lazyloaded {
  opacity: 1;
}
.o-lazyimage--svg .o-lazyimage__image {
  opacity: 1;
}
.o-lazyimage__preview {
  filter: url(#ls-sharp-blur);
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  transition: opacity 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition-duration: var(--o-lazyimage-transition-duration);
  opacity: var(--o-lazyimage-preview-opacity);
}
.o-lazyimage--background {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  top: 0;
}
.o-lazyimage--background .o-lazyimage__image,
.o-lazyimage--background .o-lazyimage__preview {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  top: 0;
  background: center center no-repeat;
  background-size: cover;
}
.o-lazyimage--loaded .o-lazyimage__preview[src$=".png"] {
  opacity: 0;
}

.o-lazyimage--transparent:before {
  content: "";
  background-color: transparent;
  border: 5px solid #fff;
  border-radius: 50%;
  border-top-color: transparent;
  border-right-color: transparent;
  width: 2.5rem;
  height: 2.5rem;
  display: inline-block;
  vertical-align: middle;
  box-sizing: border-box;
  animation: spinner 0.65s infinite linear;
  margin-top: -1.25rem;
  margin-left: -1.25rem;
  position: absolute;
  top: 50%;
  left: 50%;
}

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

.o-hello-icon {
  display: inline-block;
  line-height: 0;
}
.o-hello-icon svg {
  vertical-align: middle;
  height: 1em;
  width: auto;
  fill: currentColor;
}
.o-hello-icon--size-lg {
  font-size: 1.3333333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}
.o-hello-icon--fw {
  width: 1.2857142857em;
  text-align: center;
}
.o-hello-icon--border {
  border: 1px solid currentColor;
  height: 1em;
  line-height: 1em;
  width: 1em;
  text-align: center;
}
.o-hello-icon--border svg {
  height: 0.6em;
  vertical-align: inherit;
}
.o-hello-icon--round {
  border-radius: 50%;
}
.o-hello-icon--animation-spin {
  animation: spin 2s infinite linear;
}
.o-hello-icon--animation-pulse {
  animation: spin 1s infinite steps(8);
}
.o-hello-icon--rotate-90 {
  transform: rotate(90deg);
}
.o-hello-icon--rotate-180 {
  transform: rotate(180deg);
}
.o-hello-icon--rotate-270 {
  transform: rotate(270deg);
}
.o-hello-icon--flip-horizontal {
  transform: scale(-1 1);
}
.o-hello-icon--flip-vertical {
  transform: scale(1 -1);
}

:root {
  --spacing-content: 1rem;
  --spacing-content-p: 1rem;
  --spacing-content: 2.5rem;
  --spacing-content-large: calc(var(--spacing-content) * 3);
  --spacing-content-small: calc(var(--spacing-content) / 3);
}

.c-blocks {
  padding-bottom: var(--spacing-content-large);
}
.c-blocks > * {
  margin-top: 0;
  margin-bottom: 0;
}
.c-blocks > * + * {
  margin-top: var(--spacing-content);
}
.c-blocks:first-child {
  margin-top: var(--spacing-content-large);
}
.c-blocks > :where(h2, h3, h4, h5, h6),
.c-blocks .b-sht-services,
.c-blocks .b-sht-solutions,
.c-blocks .b-contact-cta,
.c-blocks .wp-block-quote,
.c-blocks .wp-block-quote + *,
.c-blocks .wp-block-group,
.c-blocks .wp-block-sht-quote,
.c-blocks .b-sht-projekte,
.c-blocks .b-sht-services,
.c-blocks .wp-block-sht-gray-columns {
  --spacing-content: var(--spacing-content-large);
}

/*
 * Components before blocks, so that block-specific
 * rules can override components
 */
:root {
  --c-adminbar-height: 0;
}
:root.admin-bar {
  --c-adminbar-height: 46px;
}
@media screen and (min-width: 48.9375em) {
  :root.admin-bar {
    --c-adminbar-height: 32px;
  }
}

.c-article__date {
  display: block;
  font-size: var(--font-size-small);
}
:root {
  --c-block-margin-top: var(--unit);
}

.c-blocks {
  /*
  padding-top: var(--grid-gap-h);

  > * {
      margin-top: 0;
      margin-bottom: 0;

      & + * {
          margin-top: var(--grid-gap-h-medium);
      }
  }

  & > * + h2 {
      margin-top: var(--grid-gap-h);
  }
   */
}
.c-blocks:after {
  content: " ";
  display: table;
  clear: both;
}
.c-blocks > p,
.c-blocks .wp-block-column > p {
  font-size: var(--font-size-medium);
}

.c-constraint {
  padding-left: var(--c-constraint-padding-side);
  padding-right: var(--c-constraint-padding-side);
}
.c-constraint > *:not(.wp-block-group) {
  margin-left: auto;
  margin-right: auto;
}
.c-constraint > :not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright) {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--constraint-content);
}

.c-footer__inner {
  max-width: var(--constraint-content);
  width: var(--constraint-full);
  margin-left: auto;
  margin-right: auto;
  padding: 0 0 var(--unit-medium) 0;
  display: grid;
  grid-gap: var(--grid-gap);
  grid-template-areas: "logo logo logo logo logo" "socialmedia menu1 menu2 menu3 contact" "copyright copyright copyright copyright copyright";
}
@media screen and (max-width: 41.68125em) {
  .c-footer__inner {
    padding: 0 0 var(--unit-medium) var(--c-constraint-padding-side);
    grid-template-areas: "logo logo" "menu1 contact" "menu2 contact" "menu3 socialmedia" "menu3 copyright";
  }
}
.c-footer__menu--1 {
  grid-area: menu1;
}
.c-footer__menu--2 {
  grid-area: menu2;
}
.c-footer__menu--3 {
  grid-area: menu3;
}
.c-footer__logo {
  color: var(--color-primary);
  grid-area: logo;
}
.c-footer__logo svg {
  width: 150px;
}
.c-footer__contact {
  grid-area: contact;
}
.c-footer__contact p {
  margin: 0;
  font-size: var(--font-size-small);
}
.c-footer__contact a {
  text-decoration: none;
}
.c-footer__contact a:hover {
  text-decoration: underline;
}
.c-footer__social-media-link svg {
  width: 2.5rem;
}
.c-footer__social-media-link + .c-footer__social-media-link {
  margin-left: 1rem;
}
.c-footer__copyright {
  grid-area: copyright;
  font-size: var(--font-size-small);
}
.c-footer__scrolltop {
  position: fixed;
  bottom: var(--grid-gap);
  right: var(--grid-gap);
  width: 3rem;
  height: 3rem;
  background-color: #fff;
  border-radius: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  opacity: 1;
  will-change: opacity;
  transition: 200ms opacity;
  box-shadow: 0 0 0.5em 2px rgba(0, 0, 0, 0.1);
}
.c-footer__scrolltop:disabled {
  opacity: 0;
}
.c-footer__scrolltop .o-hello-icon {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%) rotate(180deg);
  display: block;
  font-size: 1.5rem;
}
.c-footer__scrolltop .o-hello-icon svg {
  display: block;
}

.c-footer-menu__entries {
  display: block;
}
.c-footer-menu__entry {
  display: block;
  line-height: 1;
}
.c-footer-menu__entry + .c-footer-menu__entry {
  margin-top: 0.5em;
}
.c-footer-menu__entrylink {
  text-decoration: none;
  color: var(--color-primary);
  font-size: var(--font-size-small);
}
.c-footer-menu__entrylink:hover {
  text-decoration: underline;
}

:root {
  --color-header: #fff;
  --header-shadow: none;
  --header-text-shadow: none;
}

.c-header {
  position: relative;
  overflow: hidden;
  background-color: var(--color-gray-superlight);
  display: flex;
  flex-direction: column;
}
.c-header--with-shadows {
  --header-shadow: radial-gradient(circle at bottom left, black, transparent 75%);
  --header-text-shadow: 0 0 1rem rgb(0 0 0 / 75%), 0 0 .15em rgb(0 0 0 / 75%);
}
.c-header::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  background: var(--header-shadow, none);
  opacity: 0.25;
  pointer-events: none;
}
.single-isource_podcasts .c-header {
  --color-header: var(--body-color);
}
:where(.c-body--has-header-image) .c-header {
  height: 100vh;
}
@media screen and (min-width: 24.375em) {
  :where(.c-body--has-header-image) .c-header {
    height: 75vh;
  }
}
@media screen and (min-width: 37.5em) {
  :where(.c-body--has-header-image) .c-header {
    height: 75vw;
  }
}
@media screen and (min-width: 64em) {
  :where(.c-body--has-header-image) .c-header {
    height: 50vw;
  }
}
@media screen and (min-width: 80em) {
  :where(.c-body--has-header-image) .c-header {
    height: 46vw;
  }
}
@media screen and (min-width: 120em) {
  :where(.c-body--has-header-image) .c-header {
    height: 85vh;
  }
}
.c-header__masthead {
  position: relative;
  z-index: 10;
}
.c-header__bkg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}
.c-header__bkg--loaded {
  opacity: 1;
  transition: opacity 0.5s ease-in-out;
}
.c-header__bkg--mobile {
  display: none;
}
.c-header__bkg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 41.68125em) {
  .c-header__bkg--desktop {
    display: none;
  }
  .c-header__bkg--mobile {
    display: block;
  }
}
.c-header__inner {
  text-shadow: var(--header-text-shadow, none);
  position: relative;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-direction: column;
  height: 100%;
  z-index: 10;
  max-width: var(--constraint-content);
  width: var(--constraint-full);
}
@media screen and (max-width: 41.68125em) {
  .c-header__inner {
    justify-content: flex-end;
    padding-bottom: calc(var(--c-constraint-padding-side) * 2);
  }
}
:where(:not(.c-body--has-header-image)) .c-header__inner {
  padding-top: 160px;
  padding-bottom: 80px;
}
.c-header__inner--empty {
  max-width: var(--constraint-medium);
}
@media screen and (max-width: 41.68125em) {
  .c-header__inner--empty {
    justify-content: center;
  }
  :where(.c-body--has-header-image) .c-header__inner--empty {
    padding-bottom: 0;
  }
}
.c-header__inner--empty .c-header__subtitle {
  width: 100%;
  max-width: 100%;
}
.c-header__support {
  position: relative;
  margin: 0 auto;
  max-width: var(--constraint-content);
  width: var(--constraint-full);
  z-index: 10;
}
.c-header__subtitle {
  font-size: var(--font-size-h1);
  font-weight: bold;
  color: var(--color-header);
  display: inline-block;
  width: 480px;
  max-width: 90%;
  line-height: 1.2;
}
@media screen and (max-width: 41.68125em) {
  .c-header__subtitle {
    font-size: calc(var(--font-size-h2) - 2px);
  }
}
.c-header__scrolldown {
  /*position: absolute;
        z-index: 10;
        left: 50%;
        bottom: 5vh;
        transform: translateX(-50%);

         */
  position: relative;
  margin-bottom: 5vh;
  justify-self: flex-end;
  cursor: pointer;
  color: var(--color-header);
}
.c-header__scrolldown:hover {
  color: var(--color-header);
}
.c-header__scrolldown:hover .o-hello-icon {
  transform: translateY(20%);
}
.c-header__scrolldown .o-hello-icon {
  margin-top: 0.2rem;
  font-size: 1.5rem;
  display: block;
  transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  will-change: transform;
}
@media screen and (max-width: 41.68125em) {
  .c-header__scrolldown {
    display: none;
  }
}
.c-header__icon {
  margin-bottom: 3vh;
  display: block;
}
.c-header__icon img {
  width: 150px;
}

:root {
  --c-masthead-height: 5.3125rem;
}
@media screen and (min-width: 80em) {
  :root {
    --c-masthead-height: 6.5rem;
  }
}

.c-masthead {
  z-index: 999;
}
.c-masthead__inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  max-width: var(--constraint-content);
  margin: 0 auto 1rem;
  padding: var(--c-constraint-padding-side-v) var(--c-constraint-padding-side);
}
.c-masthead__logo {
  padding: calc(var(--c-constraint-padding-side) - var(--c-constraint-padding-side-v)) 0;
  display: block;
}
.c-masthead__logolink {
  position: relative;
  text-decoration: none;
  color: var(--color-header-logo);
}
.c-masthead__logolink:hover {
  color: var(--color-header-logo);
}
.c-masthead__logolink:after {
  position: absolute;
  content: "";
  width: 10.75rem;
  aspect-ratio: 1;
  display: block;
  background-color: var(--color-header-logo-bkg);
  left: 50%;
  bottom: 0;
  z-index: -1;
  border-radius: 50%;
  transform: translateX(-50%) translateY(25%);
}
.c-masthead__logolink svg {
  width: 6rem;
}
.c-masthead__toggler {
  display: none;
  position: relative;
  top: 0;
  right: 0;
  transition-duration: 0ms;
  z-index: 999;
}
.c-masthead__toggler[data-open=true] {
  position: fixed;
  top: var(--c-constraint-padding-side);
  right: var(--c-constraint-padding-side);
}
@media screen and (max-width: 79.99375em) {
  .c-masthead__toggler {
    display: block;
  }
}

:root {
  --color-header: #fff;
}

.c-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
}
.c-menu__entries {
  display: flex;
  gap: var(--grid-gap-xlarge);
}
@media screen and (max-width: 79.99375em) {
  .c-menu__entries {
    gap: var(--grid-gap);
  }
}
@media screen and (min-width: 80em) {
  body.c-body--has-header-image .c-menu__entries--primary {
    filter: drop-shadow(0 0 2px rgba(0, 0, 0, 0.25));
  }
}
.c-menu__entry + .c-menu__entry .c-menu__entrylink {
  position: relative;
}
.c-menu__entry--current.current-menu-ancestor > .c-menu__entrylink:after, .c-menu__entry--current_item_parent.current-menu-ancestor > .c-menu__entrylink:after,
.c-menu .current-menu-item:not(.c-menu__entry--depth-0) > .c-menu__entrylink:after {
  background-color: currentColor;
}
.c-menu__entrylink {
  text-decoration: none;
  color: var(--color-header);
}
.c-menu__entrylink:after {
  position: absolute;
  content: "";
  display: block;
  height: 0.12em;
  width: 100%;
  left: 0;
  bottom: -0.2em;
}
@media screen and (max-width: 41.68125em) {
  .c-menu__entrylink:after {
    height: 0.1em;
  }
}
.c-menu__entrylink:hover {
  color: var(--color-header);
}
.c-menu__entry {
  position: relative;
  font-size: var(--font-size-medium);
}
.c-menu__entry > .sub-menu {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 200px;
  transform: translateY(100%);
  padding-top: 0.5rem;
  display: none;
}
.c-menu__entry > .sub-menu .c-menu__entry + .c-menu__entry {
  margin-left: 0;
  margin-top: 0.3em;
}
.c-menu__submenu-trigger {
  text-indent: -9999px;
  width: 1em;
  height: 1em;
  position: relative;
  margin-top: 0;
  cursor: pointer;
  margin-left: 0.3rem;
}
@media screen and (max-width: 79.99375em) {
  .c-menu__submenu-trigger {
    line-height: 1.3;
  }
}
.c-menu__submenu-trigger:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border-bottom: 0.3em solid var(--color-header);
  border-right: 0.3em solid var(--color-header);
  position: absolute;
  left: 0;
  top: 20%;
  transform: rotate(45deg) translateY(0) scale(0.6);
  transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.c-menu__entry--submenu-title {
  display: none;
}
.c-menu__menu-contact {
  display: none;
}
@media screen and (max-width: 79.99375em) {
  .c-menu {
    display: none;
    position: fixed;
    bottom: 0;
    right: 0;
    left: 0;
    top: 0;
    z-index: 900;
    background-color: #fff;
    padding: 5rem 4rem 2.5rem 4rem;
    flex-direction: column;
    justify-content: space-between;
  }
  .c-menu__entry--submenu-title {
    display: block;
    font-weight: bold;
  }
  .c-menu__submenu-title {
    display: inline-block;
    position: relative;
    margin-bottom: 0.5em;
  }
  .c-menu__submenu-title:after {
    position: absolute;
    content: "";
    display: block;
    height: 0.1em;
    left: 0;
    right: -1.7rem;
    bottom: -0.4em;
    background-color: var(--color-lightblue);
  }
  .c-menu__entries {
    flex-direction: column;
  }
}
@media screen and (max-width: 79.99375em) and (min-width: 80em) {
  body.c-body--has-header-image .c-menu__entries--primary {
    text-shadow: 0 0 0.5em rgba(0, 0, 0, 0.35);
  }
}
@media screen and (max-width: 79.99375em) {
  .c-menu__entry {
    font-size: var(--font-size-h3);
    position: inherit;
  }
  .c-menu__entry .c-menu__entry {
    position: relative;
  }
  .c-menu__entry > .sub-menu {
    position: absolute;
    left: 0;
    top: 0;
    bottom: inherit;
    width: 100%;
    transform: translateY(0) translateX(100%);
    padding-top: 0;
    display: none;
  }
  .c-menu__entry--current > .c-menu__entrylink, .c-menu__entry--current_item_parent > .c-menu__entrylink {
    border-bottom: none;
  }
  .c-menu__entry--current.c-menu__entry--depth-0 > .c-menu__entrylink:after, .c-menu__entry--current_item_parent.c-menu__entry--depth-0 > .c-menu__entrylink:after {
    display: none;
  }
  .c-menu__entrylink {
    color: var(--color-primary);
    font-size: var(--font-size-h3);
    font-weight: bold;
  }
  .c-menu__entrylink:hover {
    color: var(--color-primary);
  }
  .c-menu > ul {
    transition: transform 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  }
  .c-menu[data-menu-move-left=true] > ul {
    transform: translateX(-100%);
  }
  .c-menu__submenu-trigger {
    margin-left: 0.6rem;
  }
  .c-menu__submenu-trigger:after {
    border-right-color: var(--color-primary);
    border-bottom-color: var(--color-primary);
    transform: rotate(-45deg) translateY(0) scale(0.5) !important;
  }
  .c-menu__submenu-trigger--back:after {
    transform: rotate(135deg) translateY(0) scale(0.5) !important;
  }
  .c-menu__menu-contact {
    display: block;
    margin-top: var(--font-size-h3);
    font-size: var(--font-size-h5);
  }
}

.post-password-form {
  font-size: 1.25em;
  padding: 1rem;
  text-align: center;
}
.post-password-form > * {
  margin-block-start: 0;
  margin-block-end: 0;
}
.post-password-form > * + * {
  margin-block-start: 1rem;
}
.post-password-form input[type=submit] {
  appearance: none;
  border-radius: 0;
  border-color: var(--color-primary);
  border-style: solid;
  background-color: var(--color-primary);
  color: var(--color-white);
  padding-inline-start: 1em;
  padding-inline-end: 1em;
}
.post-password-form input[type=password] {
  color: inherit;
  border-radius: 0;
  border: 1px solid currentColor;
}
.post-password-form label {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.post-password-form p:has(label) {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}

.single .c-taxonomy {
  padding-left: var(--unit);
  padding-right: var(--unit);
}
@media screen and (min-width: 48em) {
  .single .c-taxonomy {
    padding-left: 0;
    padding-right: 0;
  }
}

.c-toggler {
  font-size: 2rem;
  width: 40px;
  height: 30px;
  cursor: pointer;
}
.c-toggler__line {
  position: absolute;
  left: 0;
  right: 0;
  background-color: var(--color-header);
  height: 10%;
  top: 50%;
  border-radius: 100px;
  transform: translateY(-50%);
  transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.c-toggler__line--1 {
  top: 0;
  transform: translateY(0);
}
.c-toggler__line--2 {
  left: 40%;
}
.c-toggler__line--3 {
  top: 100%;
  transform: translateY(-100%);
}
.c-toggler[data-open=true] .c-toggler__line {
  background-color: var(--color-primary);
}
.c-toggler[data-open=true] .c-toggler__line--1 {
  top: 45%;
  transform: rotate(45deg) translateY(0);
}
.c-toggler[data-open=true] .c-toggler__line--2 {
  transform: scale(0) translateY(0);
}
.c-toggler[data-open=true] .c-toggler__line--3 {
  top: 45%;
  transform: rotate(-45deg) translateY(0);
}

.c-pagination__content {
  margin: var(--grid-gap-h) auto;
  width: 100%;
  max-width: var(--constraint-medium);
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-pagination .page-numbers {
  display: block;
  padding: 0 0.5em;
  margin: 0 0.2em;
  text-decoration: none;
}
.c-pagination .page-numbers.first, .c-pagination .page-numbers.prev, .c-pagination .page-numbers.last, .c-pagination .page-numbers.next {
  padding: 0 0;
}
.c-pagination .page-numbers.first svg, .c-pagination .page-numbers.prev svg, .c-pagination .page-numbers.last svg, .c-pagination .page-numbers.next svg {
  display: block;
}
.c-pagination .page-numbers.first, .c-pagination .page-numbers.prev {
  transform: rotate(180deg) translateY(0);
}
.c-pagination .page-numbers.current {
  background-color: var(--color-primary);
  border-radius: 5px;
  color: #fff;
}

.c-support-icons__title {
  color: #fff;
  font-size: var(--font-size-h3);
  margin-bottom: var(--grid-gap);
  font-weight: bold;
  line-height: 1.2;
}
@media screen and (max-width: 59.99375em) {
  .c-support-icons__title {
    font-size: calc(var(--font-size-h3));
  }
}
.c-support-icons__items {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-gap: var(--grid-gap);
  margin-bottom: var(--grid-gap);
}
@media screen and (max-width: 41.68125em) {
  .c-support-icons__items {
    grid-template-columns: 1fr 1fr;
  }
}
.c-support-icons__item {
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: var(--grid-gap);
  text-decoration: none;
}
.c-support-icons__item-text {
  text-decoration: none;
  font-size: calc(var(--font-size-h3) * 0.8);
  font-weight: bold;
}
@media screen and (max-width: 59.99375em) {
  .c-support-icons__item-text {
    font-size: calc(var(--font-size-h3) * 0.55);
  }
}
.c-support-icons__item-icon {
  font-size: 3.4rem;
}
@media screen and (max-width: 59.99375em) {
  .c-support-icons__item-icon {
    font-size: 2.5rem;
  }
}
.c-support-icons__item-icon svg {
  display: block;
}

.wp-block-embed {
  margin-left: auto;
  margin-right: auto;
}
.wp-block-embed figcaption {
  color: inherit;
}
.wp-block-embed.wp-has-aspect-ratio .wp-block-embed__wrapper {
  position: relative;
  height: 0;
}
.wp-block-embed.wp-has-aspect-ratio .wp-block-embed__wrapper > iframe {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: block;
  width: 100%;
  height: 100%;
}
.wp-block-embed.wp-has-aspect-ratio.wp-embed-aspect-16-9 .wp-block-embed__wrapper {
  padding-bottom: 56.25%;
}
.wp-block-embed.wp-has-aspect-ratio.wp-embed-aspect-4-3 .wp-block-embed__wrapper {
  padding-bottom: 75%;
}

.wp-block-file.wp-block-file {
  font-size: var(--font-size-medium);
}
.wp-block-file__button, .wp-block-file__button:hover, .wp-block-file__button:focus {
  font-size: 1em;
  background-color: var(--body-color);
  color: #fff;
  opacity: 1;
}

.wp-block-group.wp-block-sht-quote {
  padding: var(--spacing-content) 0;
}
.wp-block-group + .wp-block-group {
  margin-top: var(--spacing-content-small);
}
.wp-block-group.alignfull.has-background + .wp-block-group.alignfull {
  margin-top: 0;
}
.wp-block-group.alignfull .wp-block-group__inner-container {
  padding-inline-start: var(--grid-gap);
  padding-inline-end: var(--grid-gap);
}
.wp-block-group__inner-container > * {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--constraint-content);
}
.wp-block-group__inner-container > * + * {
  margin-top: var(--grid-gap-large);
}

.wp-block-image .alignleft {
  margin-top: var(--unit-xsmall);
  margin-right: var(--unit);
}
.wp-block-image .alignright {
  margin-top: var(--unit-xsmall);
  margin-left: var(--unit);
}
.wp-block-pullquote.wp-block-pullquote:not(.is-style-solid-color) {
  border-top: 4px solid currentColor;
  border-bottom: 4px solid currentColor;
}
.wp-block-pullquote.wp-block-pullquote.has-background a {
  color: currentColor;
}
.wp-block-pullquote.wp-block-pullquote.has-background a:active, .wp-block-pullquote.wp-block-pullquote.has-background a:hover {
  color: currentColor;
}
.wp-block-pullquote.wp-block-pullquote blockquote {
  text-align: center;
}

.wp-block-quote {
  text-align: center;
  font-style: italic;
}
.wp-block-quote p {
  font-size: var(--font-size-h2);
  line-height: 1.2;
}
.wp-block-quote cite {
  font-style: normal;
}
.wp-block-quote cite p {
  font-size: var(--font-size);
}

:root {
  --wp-block-separator-color: var(--color-black);
  --wp-block-separator-height: 1px;
  --wp-block-separator-width: 300px;
}

.wp-block-separator {
  color: var(--wp-block-separator-color);
  border-width: 0 0 var(--wp-block-separator-height);
  border-color: var(--wp-block-separator-color);
}
.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
  max-width: var(--wp-block-separator-width);
}

:root {
  --b-contact-cta-sphere-width: 750px;
  --b-contact-cta-content-width: 450px;
}

.b-contact-cta {
  position: relative;
  overflow: hidden;
  max-width: calc(100% + var(--c-constraint-padding-side) * 2) !important;
  margin-left: calc(var(--c-constraint-padding-side) * -1) !important;
  margin-right: calc(var(--c-constraint-padding-side) * -1) !important;
  padding: 0 0 var(--grid-gap-large) 0 !important;
  height: 46vw;
  /*
     @include breakpoint-tablet() {
         height: 100vw;
     }
      */
}
@media screen and (max-width: 41.68125em) {
  .b-contact-cta {
    height: 150vw;
  }
}
.wp-block-group.has-background + .b-contact-cta {
  margin-top: 0;
}
.b-contact-cta__inner {
  margin: 0 auto 0 auto;
  max-width: var(--constraint-content);
  position: relative;
  display: flex;
  justify-content: flex-end;
  height: 100%;
}
.b-contact-cta__sphere {
  position: absolute;
  background-color: var(--color-lightblue);
  mix-blend-mode: multiply;
  width: var(--b-contact-cta-sphere-width);
  height: var(--b-contact-cta-sphere-width);
  bottom: 0;
  right: 0;
  border-radius: 50%;
  transform: translateX(19%) translateY(45%);
}
@media screen and (max-width: 41.68125em) {
  .b-contact-cta__sphere {
    transform: translateX(25%) translateY(55%);
  }
}
.b-contact-cta__bkg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.b-contact-cta__bkg--mobile {
  display: none;
}
@media screen and (max-width: 41.68125em) {
  .b-contact-cta__bkg--mobile {
    display: block;
  }
  .b-contact-cta__bkg--desktop {
    display: none;
  }
}
.b-contact-cta__link {
  text-wrap: balance;
  margin-top: auto;
  display: block;
  color: var(--color-white) !important;
  text-decoration: none;
  position: relative;
  z-index: 100;
  font-size: var(--font-size-h1);
  font-weight: bold;
  width: var(--b-contact-cta-content-width);
}
@media screen and (max-width: 41.68125em) {
  .b-contact-cta__link {
    font-size: var(--font-size-h2);
    margin: auto var(--grid-gap) 0 var(--grid-gap);
  }
}
.b-contact-cta__link .b-contact-cta__icon {
  transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  will-change: transform;
  display: block;
}
.b-contact-cta__link:hover {
  color: #fff;
}
.b-contact-cta__link:hover .b-contact-cta__icon {
  transform: translateX(0.5em);
}

.b-news__entries {
  display: grid;
  align-items: flex-start;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: var(--grid-gap-large);
}
@media screen and (max-width: 41.68125em) {
  .b-news__entries {
    grid-template-columns: 1fr;
  }
}
.b-news__date {
  color: var(--color-lightblue);
  display: block;
  text-transform: uppercase;
  font-size: var(--font-size-small);
}
.b-news__entry {
  position: relative;
}
.b-news__entry-inner {
  display: grid;
  row-gap: var(--unit-small);
}
.b-news__icon {
  font-size: var(--font-size-h3);
  transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  will-change: transform;
  color: var(--color-lightblue);
}
.b-news__entry:hover .b-news__icon {
  transform: translateX(0.5em);
}
.b-news__location {
  font-size: 0.875em;
}
.b-news__link {
  display: grid;
  text-decoration: none;
  margin-top: var(--unit-small);
  font-size: var(--font-size-h3);
  font-weight: bold;
}
.b-news__link:hover .b-news__icon {
  transform: translateX(0.5em);
}
.b-news__link-flood {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1;
  font-size: 0;
  text-transform: -999rem;
}
.b-news__readmore-icon {
  display: block;
  transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  will-change: transform;
  margin-left: 0.5rem;
}
.b-news__readmore-icon .o-hello-icon,
.b-news__readmore-icon .o-hello-icon svg {
  display: block;
}
.b-news__readmore {
  text-align: center;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: var(--grid-gap-large);
}
.b-news__readmore:hover .b-news__readmore-icon {
  transform: translateX(0.5em);
}
.b-news__thumbnail {
  aspect-ratio: 3/2;
  overflow: hidden;
}
.b-news__thumbnail--empty {
  background-color: var(--wp--preset--color--gray-superlight);
}
.b-news__thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.b-news__title {
  --spacing-content: 0;
  color: var(--color-primary);
}
.b-news__title .b-news__icon {
  margin-top: var(--spacing-content);
}

.wp-block-sht-quote {
  position: relative;
  height: 46vw;
  /*
  @include breakpoint-tablet() {
      height: 100vw;
  }
   */
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (max-width: 41.68125em) {
  .wp-block-sht-quote {
    height: 150vw;
  }
}
.wp-block-sht-quote:before {
  content: "";
  background-color: var(--color-green);
  position: absolute;
  bottom: 0;
  top: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
}
.wp-block-sht-quote__title {
  color: #fff;
  font-weight: bold;
  font-size: var(--font-size-h3);
}
.wp-block-sht-quote__inner {
  margin: 0 auto;
  max-width: var(--constraint-content);
  width: var(--constraint-full);
  position: relative;
}
.wp-block-sht-quote__contentwrap {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.wp-block-sht-quote__figure {
  border-radius: 50%;
  overflow: hidden;
  margin-top: var(--grid-gap-large);
}
.wp-block-sht-quote__quote {
  margin-top: var(--grid-gap-large);
  font-size: var(--font-size-h2);
  font-weight: bold;
  color: #fff;
  text-align: center;
  line-height: 1.2;
  max-width: 600px;
}
.wp-block-sht-quote__quote:after {
  content: "»";
}
.wp-block-sht-quote__quote:before {
  content: "«";
}
.wp-block-sht-quote__name {
  font-weight: bold;
  color: #fff;
  margin-top: var(--unit-small);
}

.b-sht-jobs {
  max-width: var(--constraint-full) !important;
}
.b-sht-jobs__categoryfilters {
  max-width: var(--constraint-content);
  width: 100%;
  overflow-x: auto;
  margin: calc(var(--grid-gap-h) * 0.5) auto 0 auto;
  display: flex;
}
.b-sht-jobs__filter {
  background-color: var(--color-gray-light);
  border-radius: 100px;
  padding: 0.2em 2rem;
  font-size: var(--font-size-small);
  font-weight: bold;
  display: block;
  cursor: pointer;
  white-space: nowrap;
}
.b-sht-jobs__filter:hover {
  background-color: #fff;
}
.b-sht-jobs__filter[data-active=true] {
  background-color: var(--color-primary);
  color: #fff;
}
.b-sht-jobs__filter + .b-sht-jobs__filter {
  margin-left: calc(var(--grid-gap) / 2);
}
.b-sht-jobs__entries {
  display: grid;
  grid-gap: var(--grid-gap);
  grid-template-columns: 1fr 1fr 1fr;
  max-width: var(--constraint-content-large);
  margin-right: auto;
  margin-left: auto;
  margin-top: var(--grid-gap-h);
}
@media screen and (max-width: 59.99375em) {
  .b-sht-jobs__entries {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (max-width: 41.68125em) {
  .b-sht-jobs__entries {
    grid-template-columns: 1fr;
  }
}
.b-sht-jobs__entry {
  background-color: #fff;
  text-decoration: none;
  padding: var(--grid-gap-large);
}
.b-sht-jobs__entry h3 {
  color: var(--color-primary) !important;
}
.b-sht-jobs__entry:hover {
  background-color: var(--color-primary);
  color: #fff;
}
.b-sht-jobs__entry:hover h3 {
  color: #fff !important;
}
.b-sht-jobs__supheading {
  font-size: var(--font-size-small);
  text-transform: uppercase;
  color: var(--color-lightblue);
}
.b-sht-jobs__title {
  margin-top: 2rem;
  margin-bottom: var(--grid-gap);
}
.b-sht-jobs__icon {
  margin-top: var(--arrow-bottom-gap);
  font-size: 1.5rem;
  color: var(--color-lightblue);
  transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  will-change: transform;
  display: block;
  position: relative;
}
.b-sht-jobs__entry:hover .b-sht-jobs__icon {
  transform: translateX(0.5em);
}

.is-style-p-constraint-narrow {
  max-width: var(--constraint-medium) !important;
  margin-left: auto;
  margin-right: auto;
}

h3 {
  color: var(--color-green);
}

.is-style-h-constraint-narrow {
  max-width: var(--constraint-medium) !important;
  margin-left: auto;
  margin-right: auto;
}

.wp-block-post-template {
  list-style: none;
  padding-inline: 0;
}

.b-sht-darumisource {
  display: grid;
  gap: var(--grid-gap-large);
}
.b-sht-darumisource__entries {
  display: grid;
  grid-gap: var(--grid-gap);
  grid-template-columns: 1fr 1fr 1fr 1fr;
}
@media screen and (max-width: 59.99375em) {
  .b-sht-darumisource__entries {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (max-width: 41.68125em) {
  .b-sht-darumisource__entries {
    grid-template-columns: 1fr;
  }
}
.b-sht-darumisource__entry {
  padding: var(--grid-gap);
  background-color: #fff;
  display: flex;
  flex-direction: column;
}
.b-sht-darumisource__entry-icon {
  width: 4.4rem;
  margin: var(--spacing-content-p) auto 0 auto;
}
.b-sht-darumisource__entry-title {
  --spacing-content: 0;
  color: var(--color-primary) !important;
  text-align: center;
}
.b-sht-darumisource__entry-text {
  margin-top: var(--spacing-content-p);
}
.b-sht-darumisource__entry-text p + p {
  margin-top: 0.5rem;
}

.b-sht-projekte {
  max-width: var(--constraint-content-large) !important;
}
.b-sht-projekte__logo {
  padding: 0 2rem;
}
.b-sht-projekte__logo img {
  height: 120px;
  object-fit: contain;
  object-position: center center;
}
.b-sht-projekte__entries {
  display: grid;
  grid-gap: var(--grid-gap);
  grid-template-columns: 1fr 1fr 1fr;
}
@media screen and (max-width: 59.99375em) {
  .b-sht-projekte__entries {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (max-width: 41.68125em) {
  .b-sht-projekte__entries {
    grid-template-columns: 1fr;
  }
}
.b-sht-projekte__entry {
  background-color: var(--color-primary);
  text-decoration: none;
  color: #fff;
  position: relative;
}
.b-sht-projekte__entry h3 {
  color: var(--color-lightblue) !important;
}
.b-sht-projekte__entry:hover {
  background-color: var(--color-primary);
  color: #fff;
}
.b-sht-projekte__entry--fixed:after {
  content: "";
  display: block;
  padding-bottom: 122.2222222222%;
}
.b-sht-projekte__content {
  display: flex;
  flex-direction: column;
  padding: var(--grid-gap-large);
}
.b-sht-projekte__entry--fixed .b-sht-projekte__content {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  top: 0;
}
.b-sht-projekte__title {
  margin-top: var(--grid-gap-large);
  font-size: var(--font-size-small);
  text-transform: uppercase;
  margin-bottom: 1em;
}
.b-sht-projekte__subtitle {
  font-size: var(--font-size-h3);
}
.b-sht-projekte__icon {
  color: var(--color-lightblue);
  font-size: 1.5rem;
  margin-top: 1rem;
  transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  will-change: transform;
  display: block;
}
.b-sht-projekte__icon:hover {
  color: var(--color-lightblue);
}
.b-sht-projekte__entry:hover .b-sht-projekte__icon {
  transform: translateX(0.5em);
}

.b-sht-services {
  max-width: var(--constraint-content-large) !important;
  position: relative;
}
.b-sht-services__entries {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  overflow-x: scroll;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.b-sht-services__entries::-webkit-scrollbar {
  width: 0;
  height: 0;
}
.b-sht-services__entry {
  display: block;
  width: calc(33.33% - var(--grid-gap) * 2 / 3);
  min-width: 350px;
  padding: var(--grid-gap-large);
  position: relative;
  overflow: hidden;
  scroll-snap-align: start;
}
@media screen and (max-width: 41.68125em) {
  .b-sht-services__entry {
    min-width: calc(100vw - var(--grid-gap) * 5);
  }
}
.b-sht-services__entry:after {
  content: "";
  display: block;
  padding-bottom: 122.2222222222%;
}
.b-sht-services__entry h3 {
  color: #fff !important;
}
.is-style-cloud .b-sht-services__entry h3 {
  color: var(--color-primary) !important;
}
.b-sht-services__entry + .b-sht-services__entry {
  margin-left: var(--grid-gap);
}
.b-sht-services__content {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  padding: var(--grid-gap-large);
  position: absolute;
  bottom: 0;
  left: 0;
}
.b-sht-services__title {
  margin-top: auto;
  text-transform: uppercase;
  margin-bottom: 0.5em;
  position: relative;
  font-size: var(--font-size);
}
.is-style-cloud .b-sht-services__title {
  text-transform: none;
  font-size: var(--font-size-h3);
}
.b-sht-services__subtitle {
  color: #fff;
  font-size: var(--font-size-h3);
  font-weight: bold;
  position: relative;
}
.is-style-cloud .b-sht-services__subtitle {
  font-weight: 400;
  color: var(--color-lightblue);
  font-size: var(--font-size-h3);
  line-height: var(--line-height);
  font-family: var(--font-family);
}
.b-sht-services__icon {
  color: #fff;
  font-size: 1.5rem;
  margin-top: var(--arrow-bottom-gap);
  transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  will-change: transform;
  display: block;
  position: relative;
}
.is-style-cloud .b-sht-services__icon {
  color: var(--color-primary);
}
.b-sht-services__entry:hover .b-sht-services__icon {
  transform: translateX(0.5em);
}
.b-sht-services__bkg {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  top: 0;
  background-color: var(--color-lightblue);
  opacity: 30%;
}
.is-style-cloud .b-sht-services__bkg {
  background-color: var(--color-gray-light);
  opacity: 1;
}
.b-sht-services__logo {
  margin: 0 0 var(--grid-gap-h-small);
  position: relative;
}
.b-sht-services__logo img {
  width: 120px;
}
.b-sht-services__sphere {
  width: 200%;
  min-width: 600px;
  position: absolute;
  left: 50%;
  top: 20%;
  transform: translateY(-5%) translateX(-65%);
  background-color: var(--color-lightblue);
  border-radius: 50%;
}
.is-style-cloud .b-sht-services__sphere {
  background-color: var(--color-gray-superlight);
}
.b-sht-services__sphere:after {
  display: block;
  content: "";
  width: 100%;
  padding-bottom: 100%;
}
.b-sht-services__entry--yellow .b-sht-services__bkg,
.b-sht-services__entry--yellow .b-sht-services__sphere {
  background-color: var(--color-yellow);
}
.b-sht-services__entry--yellow .b-sht-services__sphere {
  transform: translateY(0) translateX(-50%);
}
.b-sht-services__entry--green .b-sht-services__bkg,
.b-sht-services__entry--green .b-sht-services__sphere {
  background-color: var(--color-green);
}
.b-sht-services__entry--green .b-sht-services__sphere {
  transform: translateY(-5%) translateX(-35%);
}
.b-sht-services__scroll {
  position: absolute;
  z-index: 50;
  top: 50%;
  left: -1rem;
  width: 3rem;
  height: 3rem;
  background-color: #fff;
  border-radius: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  opacity: 1;
  will-change: opacity;
  transition: 200ms opacity;
  box-shadow: 0 0 0.5em 2px rgba(0, 0, 0, 0.1);
}
.b-sht-services__scroll:disabled {
  opacity: 0;
}
.b-sht-services__scroll .o-hello-icon {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%) rotate(180deg);
  display: block;
  font-size: 1.5rem;
}
.b-sht-services__scroll .o-hello-icon svg {
  display: block;
}
.b-sht-services__scroll--right {
  left: inherit;
  right: -1rem;
}
.b-sht-services__scroll--right .o-hello-icon {
  transform: translateX(-50%) translateY(-50%) rotate(0deg);
}

@media screen and (min-width: 1280px) {
  .b-sht-services__logo {
    position: absolute;
  }
}

.b-sht-team__categoryfilters {
  max-width: var(--constraint-content);
  width: 100%;
  overflow-x: auto;
  margin: calc(var(--grid-gap-h) * 0.5) auto 0 auto;
  display: flex;
}
.b-sht-team__filter {
  background-color: var(--color-gray-light);
  border-radius: 100px;
  padding: 0.2em 2rem;
  font-size: var(--font-size-small);
  font-weight: bold;
  display: block;
  cursor: pointer;
  white-space: nowrap;
}
.b-sht-team__filter:hover {
  background-color: #fff;
}
.b-sht-team__filter[data-active=true] {
  background-color: var(--color-primary);
  color: #fff;
}
.b-sht-team__filter + .b-sht-team__filter {
  margin-left: calc(var(--grid-gap) / 2);
}
.b-sht-team__entries {
  display: grid;
  grid-gap: var(--grid-gap);
  grid-template-columns: 1fr 1fr 1fr;
  max-width: var(--constraint-content-large);
  margin-right: auto;
  margin-left: auto;
  margin-top: var(--grid-gap-h);
}
@media screen and (max-width: 59.99375em) {
  .b-sht-team__entries {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (max-width: 41.68125em) {
  .b-sht-team__entries {
    grid-template-columns: 1fr;
  }
}
.b-sht-team__title, .b-sht-team__position {
  font-weight: normal;
  font-size: 16px;
  color: var(--color-primary);
  margin-top: 1rem !important;
}
.b-sht-team__email, .b-sht-team__linkedin {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: var(--color-lightblue);
}
.b-sht-team__email .o-hello-icon, .b-sht-team__linkedin .o-hello-icon {
  margin-right: 0.5em;
}
.b-sht-team__email .o-hello-icon,
.b-sht-team__email .o-hello-icon svg, .b-sht-team__linkedin .o-hello-icon,
.b-sht-team__linkedin .o-hello-icon svg {
  display: block;
}
.b-sht-team__title {
  margin-top: 1rem !important;
  font-size: var(--font-size-h3);
}
.b-sht-team__position {
  margin-top: 0.3rem !important;
}
.b-sht-team__email {
  margin-top: 0.3rem !important;
}
.b-sht-team__linkedin {
  margin-top: 0.3rem !important;
}

.b-sht-solutions {
  max-width: var(--constraint-content-large) !important;
  position: relative;
}
.b-sht-solutions__entries {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  overflow-x: scroll;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.b-sht-solutions__entries::-webkit-scrollbar {
  width: 0;
  height: 0;
}
.b-sht-solutions__entry {
  display: block;
  width: calc(33.33% - var(--grid-gap) * 2 / 3);
  min-width: 350px;
  position: relative;
  overflow: hidden;
  scroll-snap-align: start;
}
@media screen and (max-width: 41.68125em) {
  .b-sht-solutions__entry {
    min-width: calc(100vw - var(--grid-gap) * 5);
  }
}
.b-sht-solutions__entry:after {
  content: "";
  display: block;
  padding-bottom: 122.2222222222%;
}
.b-sht-solutions__entry h3 {
  color: #fff !important;
}
.b-sht-solutions__entry + .b-sht-solutions__entry {
  margin-left: var(--grid-gap);
}
.b-sht-solutions__content {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  padding: var(--grid-gap-large);
  position: absolute;
  bottom: 0;
  left: 0;
}
.b-sht-solutions__title {
  margin-top: auto;
  text-transform: uppercase;
  margin-bottom: 0.5em;
  position: relative;
  font-size: var(--font-size);
}
.b-sht-solutions__subtitle {
  color: #fff;
  font-size: var(--font-size-h3);
  font-weight: bold;
  position: relative;
}
.b-sht-solutions__icon {
  color: #fff;
  font-size: 1.5rem;
  margin-top: var(--arrow-bottom-gap);
  transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  will-change: transform;
  display: block;
  position: relative;
}
.b-sht-solutions__entry:hover .b-sht-solutions__icon {
  transform: translateX(0.5em);
}
.b-sht-solutions__bkg {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  top: 0;
  background-color: var(--color-lightblue);
  opacity: 30%;
}
.b-sht-solutions__sphere {
  width: 200%;
  min-width: 600px;
  position: absolute;
  left: 50%;
  top: 20%;
  transform: translateY(-5%) translateX(-65%);
  background-color: var(--color-lightblue);
  border-radius: 50%;
}
.b-sht-solutions__sphere:after {
  display: block;
  content: "";
  width: 100%;
  padding-bottom: 100%;
}
.b-sht-solutions__entry--yellow .b-sht-solutions__bkg,
.b-sht-solutions__entry--yellow .b-sht-solutions__sphere {
  background-color: var(--color-yellow);
}
.b-sht-solutions__entry--yellow .b-sht-solutions__sphere {
  transform: translateY(0) translateX(-50%);
}
.b-sht-solutions__entry--green .b-sht-solutions__bkg,
.b-sht-solutions__entry--green .b-sht-solutions__sphere {
  background-color: var(--color-green);
}
.b-sht-solutions__entry--green .b-sht-solutions__sphere {
  transform: translateY(-5%) translateX(-35%);
}
.b-sht-solutions__scroll {
  position: absolute;
  z-index: 50;
  top: 50%;
  left: -1rem;
  width: 3rem;
  height: 3rem;
  background-color: #fff;
  border-radius: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  opacity: 1;
  will-change: opacity;
  transition: 200ms opacity;
  box-shadow: 0 0 0.5em 2px rgba(0, 0, 0, 0.1);
}
.b-sht-solutions__scroll:disabled {
  opacity: 0;
}
.b-sht-solutions__scroll .o-hello-icon {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%) rotate(180deg);
  display: block;
  font-size: 1.5rem;
}
.b-sht-solutions__scroll .o-hello-icon svg {
  display: block;
}
.b-sht-solutions__scroll--right {
  left: inherit;
  right: -1rem;
}
.b-sht-solutions__scroll--right .o-hello-icon {
  transform: translateX(-50%) translateY(-50%) rotate(0deg);
}

.wp-block-sht-dark-columns__elements {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-gap: var(--grid-gap);
  justify-content: space-around;
}
.wp-block-sht-dark-columns__elements--count-2 {
  grid-template-columns: 1fr 1fr;
}
.wp-block-sht-dark-columns__elements--count-3 {
  grid-template-columns: 1fr 1fr 1fr;
}
.wp-block-sht-dark-columns__elements--count-4 {
  grid-template-columns: 1fr 1fr 1fr 1fr;
}
@media screen and (max-width: 59.99375em) {
  .wp-block-sht-dark-columns__elements {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (max-width: 41.68125em) {
  .wp-block-sht-dark-columns__elements {
    grid-template-columns: 1fr;
  }
}
.wp-block-sht-dark-columns__element {
  background-color: var(--color-gray);
  padding: calc(var(--grid-gap) * 2) var(--grid-gap);
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.wp-block-sht-dark-columns__element--fixed:after {
  content: "";
  display: block;
  padding-bottom: 122.2222222222%;
}
.wp-block-sht-dark-columns__element--fixed .wp-block-sht-dark-columns__inner {
  position: absolute;
  padding: var(--grid-gap);
  inset: 0;
}
.wp-block-sht-dark-columns__heading {
  color: var(--color-lightblue);
}
.wp-block-sht-dark-columns__title {
  color: #fff;
  font-size: var(--font-size-h3);
  margin-top: 1rem !important;
}
.wp-block-sht-dark-columns__title:not(:first-child) {
  margin-top: 3rem !important;
}
.wp-block-sht-dark-columns__text {
  color: #fff;
  margin-top: var(--spacing-content-p) !important;
}

.c-blocks ul,
.c-blocks ol {
  margin: 0 auto;
}

ul.is-style-list-constraint-narrow,
ol.is-style-list-constraint-narrow {
  max-width: var(--constraint-medium) !important;
  margin-left: auto;
  margin-right: auto;
}

.b-sht-logowall {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-gap: var(--grid-gap);
}
@media screen and (max-width: 59.99375em) {
  .b-sht-logowall {
    grid-template-columns: 1fr 1fr;
  }
}
.b-sht-logowall__entry {
  background-color: #fff;
  position: relative;
}
.b-sht-logowall__entry img {
  position: absolute;
  left: var(--grid-gap);
  top: var(--grid-gap);
  height: calc(100% - var(--grid-gap) * 2);
  width: calc(100% - var(--grid-gap) * 2);
  object-fit: contain;
}
.b-sht-logowall__entry:after {
  content: "";
  display: block;
  padding-bottom: 50%;
}

.c-body--no-outline a,
.c-body--no-outline button,
.c-body--no-outline input[type=submit],
.c-body--no-outline input[type=reset],
.c-body--no-outline input[type=button] {
  outline: 0;
}

.alignleft,
.alignright {
  position: relative;
  z-index: 1;
  margin-bottom: var(--unit);
}

.alignleft {
  float: left;
  margin-right: var(--unit);
}

.alignright {
  float: right;
  margin-left: var(--unit);
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.aligncenter img,
.alignleft img,
.alignnone img,
.alignright img {
  display: block;
}
.aligncenter a,
.aligncenter img,
.alignleft a,
.alignleft img,
.alignnone a,
.alignnone img,
.alignright a,
.alignright img {
  margin: 0;
}

figure.alignleft,
figure.alignright,
img.alignleft,
img.alignright {
  max-width: 50%;
}

.alignwide {
  max-width: calc(100vw - var(--c-constraint-padding-side) * 2);
}
@media screen and (min-width: 80em) {
  .alignwide {
    max-width: var(--constraint-wide);
  }
  .alignwide.has-parallax {
    background-position-x: calc(var(--constraint-wide) / 2);
  }
}

.alignfull {
  max-width: 100vw;
  width: calc(100vw + var(--c-constraint-padding-side));
  margin-left: calc(var(--c-constraint-padding-side) * -1);
}
@media screen and (min-width: 40em) {
  .alignfull {
    width: 100vw;
  }
}

.has-block-margin--none {
  margin-top: 0;
  margin-bottom: 0;
}
.has-block-margin--none + * {
  margin-top: 0;
}
* + .has-block-margin--none {
  margin-bottom: 0;
}
.has-block-margin--small {
  margin-top: var(--unit-small);
  margin-bottom: var(--unit-small);
}
.has-block-margin--medium {
  margin-top: var(--unit-medium);
  margin-bottom: var(--unit-medium);
}
.has-block-margin--large {
  margin-top: var(--unit-large);
  margin-bottom: var(--unit-large);
}
.has-block-margin--xlarge {
  margin-top: var(--unit-xlarge);
  margin-bottom: var(--unit-xlarge);
}

.has-block-margin--large:first-child, .has-block-margin--medium:first-child, .has-block-margin--small:first-child, .has-block-margin--xlarge:first-child {
  margin-top: 0;
}
.has-block-margin--large:last-child, .has-block-margin--medium:last-child, .has-block-margin--small:last-child, .has-block-margin--xlarge:last-child {
  margin-bottom: 0;
}

.has-block-vertical-padding.has-block-vertical-padding--none {
  padding-top: 0;
  padding-bottom: 0;
}
.has-block-vertical-padding.has-block-vertical-padding--small {
  padding-top: var(--unit-small);
  padding-bottom: var(--unit-small);
}
.has-block-vertical-padding.has-block-vertical-padding--medium {
  padding-top: var(--unit-medium);
  padding-bottom: var(--unit-medium);
}
.has-block-vertical-padding.has-block-vertical-padding--large {
  padding-top: var(--unit-large);
  padding-bottom: var(--unit-large);
}
.has-block-vertical-padding.has-block-vertical-padding--xlarge {
  padding-top: var(--unit-xlarge);
  padding-bottom: var(--unit-xlarge);
}

:root {
  --color-link: var(--color-primary);
  --color-link-hover: var(--color-primary-dark);
  --wp--style--color--link: var(--color-link);
  --color-primary-dark: #003782;
  --color-primary-darkest: #001C42;
  --color-primary: #003782;
  --color-black: #000;
  --color-gray: #3E3E3E;
  --color-gray-medium: #9a9a9a;
  --color-gray-light: #D8D8D8;
  --color-gray-superlight: #F3F3F3;
  --color-white: #fff;
  --color-lightblue: #59ADFF;
  --color-yellow: #FACD26;
  --color-green: #78B22B;
  --color-success: #489324;
  --color-success-background: #dff0d8;
  --color-success-border: #34cf7a;
  --color-info: #333333;
  --color-info-background: #eaeaea;
  --color-info-border: #989898;
  --color-warning: #E2912A;
  --color-warning-background: #EFD7B9;
  --color-warning-border: #F3DF5D;
  --color-danger: #FF0000;
  --color-danger-background: #FFE9E9;
  --color-danger-border: #A01E32;
  --color-primary-dark: #003782;
  --color-primary-darkest: #001C42;
  --color-primary: #003782;
  --color-black: #000;
  --color-gray: #3e3e3e;
  --color-gray-medium: #9a9a9a;
  --color-gray-light: #d8d8d8;
  --color-gray-superlight: #f3f3f3;
  --color-white: #fff;
  --color-lightblue: #59ADFF;
  --color-green: #78B22B;
}

.has-primary-dark-color {
  color: var(--color-primary-dark);
}

a.has-primary-dark-color:active, a.has-primary-dark-color:hover {
  color: var(--color-primary-dark);
}

.has-primary-dark-background-color {
  background-color: var(--color-primary-dark);
}

.wp-block-group.has-primary-dark-background-color {
  background-color: var(--color-primary-dark);
}

.has-primary-dark-overlay-gradient::before {
  background: linear-gradient(transparent, var(--color-primary-dark));
}

.has-primary-darkest-color {
  color: var(--color-primary-darkest);
}

a.has-primary-darkest-color:active, a.has-primary-darkest-color:hover {
  color: var(--color-primary-darkest);
}

.has-primary-darkest-background-color {
  background-color: var(--color-primary-darkest);
}

.wp-block-group.has-primary-darkest-background-color {
  background-color: var(--color-primary-darkest);
}

.has-primary-darkest-overlay-gradient::before {
  background: linear-gradient(transparent, var(--color-primary-darkest));
}

.has-primary-color {
  color: var(--color-primary);
}

a.has-primary-color:active, a.has-primary-color:hover {
  color: var(--color-primary);
}

.has-primary-background-color {
  background-color: var(--color-primary);
}

.wp-block-group.has-primary-background-color {
  background-color: var(--color-primary);
}

.has-primary-overlay-gradient::before {
  background: linear-gradient(transparent, var(--color-primary));
}

.has-black-color {
  color: var(--color-black);
}

a.has-black-color:active, a.has-black-color:hover {
  color: var(--color-black);
}

.has-black-background-color {
  background-color: var(--color-black);
}

.wp-block-group.has-black-background-color {
  background-color: var(--color-black);
}

.has-black-overlay-gradient::before {
  background: linear-gradient(transparent, var(--color-black));
}

.has-gray-color {
  color: var(--color-gray);
}

a.has-gray-color:active, a.has-gray-color:hover {
  color: var(--color-gray);
}

.has-gray-background-color {
  background-color: var(--color-gray);
}

.wp-block-group.has-gray-background-color {
  background-color: var(--color-gray);
}

.has-gray-overlay-gradient::before {
  background: linear-gradient(transparent, var(--color-gray));
}

.has-gray-medium-color {
  color: var(--color-gray-medium);
}

a.has-gray-medium-color:active, a.has-gray-medium-color:hover {
  color: var(--color-gray-medium);
}

.has-gray-medium-background-color {
  background-color: var(--color-gray-medium);
}

.wp-block-group.has-gray-medium-background-color {
  background-color: var(--color-gray-medium);
}

.has-gray-medium-overlay-gradient::before {
  background: linear-gradient(transparent, var(--color-gray-medium));
}

.has-gray-light-color {
  color: var(--color-gray-light);
}

a.has-gray-light-color:active, a.has-gray-light-color:hover {
  color: var(--color-gray-light);
}

.has-gray-light-background-color {
  background-color: var(--color-gray-light);
}

.wp-block-group.has-gray-light-background-color {
  background-color: var(--color-gray-light);
}

.has-gray-light-overlay-gradient::before {
  background: linear-gradient(transparent, var(--color-gray-light));
}

.has-gray-superlight-color {
  color: var(--color-gray-superlight);
}

a.has-gray-superlight-color:active, a.has-gray-superlight-color:hover {
  color: var(--color-gray-superlight);
}

.has-gray-superlight-background-color {
  background-color: var(--color-gray-superlight);
}

.wp-block-group.has-gray-superlight-background-color {
  background-color: var(--color-gray-superlight);
}

.has-gray-superlight-overlay-gradient::before {
  background: linear-gradient(transparent, var(--color-gray-superlight));
}

.has-white-color {
  color: var(--color-white);
}

a.has-white-color:active, a.has-white-color:hover {
  color: var(--color-white);
}

.has-white-background-color {
  background-color: var(--color-white);
}

.wp-block-group.has-white-background-color {
  background-color: var(--color-white);
}

.has-white-overlay-gradient::before {
  background: linear-gradient(transparent, var(--color-white));
}

.has-lightblue-color {
  color: var(--color-lightblue);
}

a.has-lightblue-color:active, a.has-lightblue-color:hover {
  color: var(--color-lightblue);
}

.has-lightblue-background-color {
  background-color: var(--color-lightblue);
}

.wp-block-group.has-lightblue-background-color {
  background-color: var(--color-lightblue);
}

.has-lightblue-overlay-gradient::before {
  background: linear-gradient(transparent, var(--color-lightblue));
}

.has-green-color {
  color: var(--color-green);
}

a.has-green-color:active, a.has-green-color:hover {
  color: var(--color-green);
}

.has-green-background-color {
  background-color: var(--color-green);
}

.wp-block-group.has-green-background-color {
  background-color: var(--color-green);
}

.has-green-overlay-gradient::before {
  background: linear-gradient(transparent, var(--color-green));
}

.has-overlay::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: block;
  top: 50%;
  z-index: 1;
  opacity: 0.9;
}

.has-text-color *:not(.has-text-color),
.has-text-color *:not(.has-text-color):active,
.has-text-color *:not(.has-text-color):hover {
  color: inherit;
}

.has-large-font-size {
  font-size: 1em;
}

.has-font-size-xsmall {
  font-size: var(--font-size-xsmall);
}

.has-font-size-small {
  font-size: var(--font-size-small);
}

.has-font-size-medium {
  font-size: var(--font-size-medium);
}

.has-font-size-large {
  font-size: var(--font-size-large);
}

.has-font-size-xlarge {
  font-size: var(--font-size-xlarge);
}

html.c-body--themedev::after {
  position: fixed;
  padding: 0.5em 0.75em;
  font-size: var(--font-size-small);
  bottom: 0;
  right: 0;
  background-color: rgba(255, 255, 255, 0.8);
  color: red;
  outline: 1px dotted red;
  z-index: 9999;
  display: block;
}
@media screen and (min-width: 0em) and (max-width: 19.99375em) {
  html.c-body--themedev::after {
    content: "zero";
  }
}
@media screen and (min-width: 20em) and (max-width: 24.36875em) {
  html.c-body--themedev::after {
    content: "phone";
  }
}
@media screen and (min-width: 24.375em) and (max-width: 37.49375em) {
  html.c-body--themedev::after {
    content: "bigphone";
  }
}
@media screen and (min-width: 37.5em) and (max-width: 39.99375em) {
  html.c-body--themedev::after {
    content: "wordpress_small";
  }
}
@media screen and (min-width: 40em) and (max-width: 41.68125em) {
  html.c-body--themedev::after {
    content: "narrow";
  }
}
@media screen and (min-width: 41.6875em) and (max-width: 47.99375em) {
  html.c-body--themedev::after {
    content: "phone_wide";
  }
}
@media screen and (min-width: 48em) and (max-width: 48.93125em) {
  html.c-body--themedev::after {
    content: "tablet";
  }
}
@media screen and (min-width: 48.9375em) and (max-width: 59.99375em) {
  html.c-body--themedev::after {
    content: "wordpress_medium";
  }
}
@media screen and (min-width: 60em) and (max-width: 79.99375em) {
  html.c-body--themedev::after {
    content: "medium";
  }
}
@media screen and (min-width: 80em) and (max-width: 63.99375em) {
  html.c-body--themedev::after {
    content: "wide";
  }
}
@media screen and (min-width: 64em) and (max-width: 79.99375em) {
  html.c-body--themedev::after {
    content: "tablet_landscape";
  }
}
@media screen and (min-width: 80em) and (max-width: 99.9%) {
  html.c-body--themedev::after {
    content: "laptop";
  }
}
@media screen and (min-width: 100%) and (max-width: 89.99375em) {
  html.c-body--themedev::after {
    content: "full";
  }
}
@media screen and (min-width: 90em) and (max-width: 99.99375em) {
  html.c-body--themedev::after {
    content: "desktop";
  }
}
@media screen and (min-width: 100em) and (max-width: 119.99375em) {
  html.c-body--themedev::after {
    content: "desktop_large";
  }
}
@media screen and (min-width: 120em) {
  html.c-body--themedev::after {
    content: "desktop_xlarge";
  }
}