@charset "UTF-8";
/*
	Abstracts are helpers, variables and functions
	for scss compliation.
*/
/*
	@TODO: Add to theme: new division fix for updated sass package.
*/
/**==================================================================================================================================
BREAKPOINT
@TODO: remove? What is use case?? either use simple global points or write custom line. why does first breakpoint have to be 0?
 ==================================================================================================================================*/
/**==================================================================================================================================
BREAKPOINT ENDS
==================================================================================================================================*/
span.edit-link {
  display: inline-block;
  background-color: yellow;
  font-weight: 700;
  position: fixed;
  left: 0;
  bottom: 3.125rem;
  transform: translateX(-45px);
  transition: all 0.2s;
}

span.edit-link a {
  display: block;
  padding: 0.9375rem;
}

span.edit-link:hover {
  transform: translateX(0);
}

/*
	Variables for compliation
	NB! Colors should be added to base/config file as css root variable.
*/
/**
 * Block section background colors.
 * Include the background options ACF fields group to use these.
 */
/**
 *	Fluid sized fonts
 *	Read more here:
 *	https://css-tricks.com/snippets/css/fluid-typography/
 */
/*
 * makes ul/ol as a dropdown select (normaly in mobile)
 * Structure: div > title > list > li > a
*/
/*
	Variables for legacy dc plugins
*/
/**
 * This file includes all the Site styling.
 *
 * Note that the Gutenberg blocks are imported block-by-block,
 * in the src/blocks directory.
 */
/*
	Abstracts are helpers, variables and functions
	for scss compliation.
*/
/*
	@TODO: Add to theme: new division fix for updated sass package.
*/
/**==================================================================================================================================
BREAKPOINT
@TODO: remove? What is use case?? either use simple global points or write custom line. why does first breakpoint have to be 0?
 ==================================================================================================================================*/
/**==================================================================================================================================
BREAKPOINT ENDS
==================================================================================================================================*/
span.edit-link {
  display: inline-block;
  background-color: yellow;
  font-weight: 700;
  position: fixed;
  left: 0;
  bottom: 3.125rem;
  transform: translateX(-45px);
  transition: all 0.2s;
}

span.edit-link a {
  display: block;
  padding: 0.9375rem;
}

span.edit-link:hover {
  transform: translateX(0);
}

/*
	Variables for compliation
	NB! Colors should be added to base/config file as css root variable.
*/
/**
 * Block section background colors.
 * Include the background options ACF fields group to use these.
 */
/**
 *	Fluid sized fonts
 *	Read more here:
 *	https://css-tricks.com/snippets/css/fluid-typography/
 */
/*
 * makes ul/ol as a dropdown select (normaly in mobile)
 * Structure: div > title > list > li > a
*/
/*
	Variables for legacy dc plugins
*/
/**
 * Common files shared between app and admin.
 */
/**
 * This file includes all the common files used between the frontend and the Gutenberg editor.
 * By including a file here, it will get also be included into app.scss and admin.scss
 *
 * Note that the Gutenberg blocks are imported block-by-block,
 * in the src/blocks directory.
 */
/**
 * Base files
 */
:root {
  --spacing-block: 163px;
  --spacing-block-mobile: 80px;
  --spacing-content: 5rem;
  --spacing-grid-gap: 38px;
  --spacing-column-side-padding: calc(var(--spacing-grid-gap) / 2);
  --element-width-wide: 90vw;
  --element-width-content: 950px;
  --element-border-radius: 10px;
  --font-family: Mulish, Helvetica, arial, sans-serif;
  --font-size-ui: 14px;
  --color__grey: #626778;
  --color__grey-dark: #2D2D35;
  --color__grey-light: #BAC1CB;
  --color__grey-lighter: #E8EAEE;
  --color__purple: #977EFF;
  --color__purple-medium: #A894FF;
  --color__purple-dark: #7E69D5;
  --color__purple-light: #E2DBFF;
  --color__white: #ffffff;
  --color__black: var(--color__grey-dark);
  --color__grey-input: #CDD2D9;
}

/* 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;
}

figure {
  padding: 0;
  margin: 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.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

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

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-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;
}

/**
 * Add the correct global box-sizing for all browsers
 */
* {
  box-sizing: border-box;
}

@font-face {
  font-family: "Mulish";
  src: url("../fonts/Mulish/static/Mulish-Light.eot");
  src: url("../fonts/Mulish/static/Mulish-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/Mulish/static/Mulish-Light.ttf") format("truetype"), url("../fonts/Mulish/static/Mulish-Light.woff2") format("woff2"), url("../fonts/Mulish/static/Mulish-Light.woff") format("woff"), url("../fonts/Mulish/static/Mulish-Light.svg#Light") format("svg");
  font-weight: 300;
  font-weight: light;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Mulish";
  src: url("../fonts/Mulish/static/Mulish-LightItalic.eot");
  src: url("../fonts/Mulish/static/Mulish-LightItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/Mulish/static/Mulish-LightItalic.ttf") format("truetype"), url("../fonts/Mulish/static/Mulish-LightItalic.woff2") format("woff2"), url("../fonts/Mulish/static/Mulish-LightItalic.woff") format("woff"), url("../fonts/Mulish/static/Mulish-LightItalic.svg#LightItalic") format("svg");
  font-weight: 300;
  font-weight: light;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Mulish";
  src: url("../fonts/Mulish/static/Mulish-Regular.eot");
  src: url("../fonts/Mulish/static/Mulish-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/Mulish/static/Mulish-Regular.ttf") format("truetype"), url("../fonts/Mulish/static/Mulish-Regular.woff2") format("woff2"), url("../fonts/Mulish/static/Mulish-Regular.woff") format("woff"), url("../fonts/Mulish/static/Mulish-Regular.svg#Regular") format("svg");
  font-weight: 400;
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Mulish";
  src: url("../fonts/Mulish/static/Mulish-Italic.eot");
  src: url("../fonts/Mulish/static/Mulish-Italic.eot?#iefix") format("embedded-opentype"), url("../fonts/Mulish/static/Mulish-Italic.ttf") format("truetype"), url("../fonts/Mulish/static/Mulish-Italic.woff2") format("woff2"), url("../fonts/Mulish/static/Mulish-Italic.woff") format("woff"), url("../fonts/Mulish/static/Mulish-Italic.svg#Italic") format("svg");
  font-weight: 400;
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Mulish";
  src: url("../fonts/Mulish/static/Mulish-Bold.eot");
  src: url("../fonts/Mulish/static/Mulish-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Mulish/static/Mulish-Bold.ttf") format("truetype"), url("../fonts/Mulish/static/Mulish-Bold.woff2") format("woff2"), url("../fonts/Mulish/static/Mulish-Bold.woff") format("woff"), url("../fonts/Mulish/static/Mulish-Bold.svg#Bold") format("svg");
  font-weight: 700;
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Mulish";
  src: url("../fonts/Mulish/static/Mulish-BoldItalic.eot");
  src: url("../fonts/Mulish/static/Mulish-BoldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/Mulish/static/Mulish-BoldItalic.ttf") format("truetype"), url("../fonts/Mulish/static/Mulish-BoldItalic.woff2") format("woff2"), url("../fonts/Mulish/static/Mulish-BoldItalic.woff") format("woff"), url("../fonts/Mulish/static/Mulish-BoldItalic.svg#BoldItalic") format("svg");
  font-weight: 700;
  font-weight: bold;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Mulish";
  src: url("../fonts/Mulish/static/Mulish-ExtraBold.eot");
  src: url("../fonts/Mulish/static/Mulish-ExtraBold.eot?#iefix") format("embedded-opentype"), url("../fonts/Mulish/static/Mulish-ExtraBold.ttf") format("truetype"), url("../fonts/Mulish/static/Mulish-ExtraBold.woff2") format("woff2"), url("../fonts/Mulish/static/Mulish-ExtraBold.woff") format("woff"), url("../fonts/Mulish/static/Mulish-ExtraBold.svg#ExtraBold") format("svg");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Mulish";
  src: url("../fonts/Mulish/static/Mulish-ExtraBoldItalic.eot");
  src: url("../fonts/Mulish/static/Mulish-ExtraBoldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/Mulish/static/Mulish-ExtraBoldItalic.ttf") format("truetype"), url("../fonts/Mulish/static/Mulish-ExtraBoldItalic.woff2") format("woff2"), url("../fonts/Mulish/static/Mulish-ExtraBoldItalic.woff") format("woff"), url("../fonts/Mulish/static/Mulish-ExtraBoldItalic.svg#ExtraBoldItalic") format("svg");
  font-weight: 800;
  font-style: italic;
  font-display: swap;
}
.text-columns-wrapper {
  max-width: var(--element-width-content);
}

@media screen and (min-width: 1440px) {
  .text-columns-wrapper {
    -moz-column-fill: balance;
         column-fill: balance;
    -moz-column-count: 2;
         column-count: 2;
    -moz-column-gap: 1.875rem;
         column-gap: 1.875rem;
  }
  .text-columns-wrapper > *:first-child {
    margin-top: 0;
  }
  .text-columns-wrapper.single-column-text {
    -moz-column-count: 1;
         column-count: 1;
  }
}
html,
body {
  font-size: 18px;
  color: var(--color__black);
  line-height: 1.5;
  font-family: var(--font-family);
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  color: var(--color__grey);
}

@media screen and (max-width: 849px) {
  html,
body {
    font-size: 16px;
  }
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 300;
  margin: 0;
}

/*
	GLOBAL FONT SIZES
	- heading-size-xlarge
	- heading-size-large
	- heading-size-normal
	- heading-size-small
	- heading-size-xsmall

	- text-size-xlarge
	- text-size-large
	- text-size-normal
	- text-size-small
	- text-size-xsmall
*/
.heading-size-xlarge {
  font-weight: 300;
  font-size: 6.25rem;
  line-height: 1.1;
}

.heading-size-xlarge {
  font-size: 46px;
}

@media screen and (min-width: 480px) {
  .heading-size-xlarge {
    font-size: calc(46px + 54 * (100vw - 480px) / 1120);
  }
}
@media screen and (min-width: 1600px) {
  .heading-size-xlarge {
    font-size: 100px;
  }
}
.heading-size-xlarge-alt {
  font-weight: 300;
  font-size: 5rem;
  line-height: 1.1;
}

.heading-size-xlarge-alt {
  font-size: 36px;
}

@media screen and (min-width: 480px) {
  .heading-size-xlarge-alt {
    font-size: calc(36px + 44 * (100vw - 480px) / 1120);
  }
}
@media screen and (min-width: 1600px) {
  .heading-size-xlarge-alt {
    font-size: 80px;
  }
}
.heading-size-large {
  font-weight: 300;
  font-size: 3.8125rem;
  line-height: 1.2;
}

.heading-size-large {
  font-size: 36px;
}

@media screen and (min-width: 480px) {
  .heading-size-large {
    font-size: calc(36px + 25 * (100vw - 480px) / 1120);
  }
}
@media screen and (min-width: 1600px) {
  .heading-size-large {
    font-size: 61px;
  }
}
.heading-size-normal {
  font-weight: 300;
  font-size: 2.375rem;
  line-height: 1.3;
}

.heading-size-normal {
  font-size: 24px;
}

@media screen and (min-width: 480px) {
  .heading-size-normal {
    font-size: calc(24px + 14 * (100vw - 480px) / 1120);
  }
}
@media screen and (min-width: 1600px) {
  .heading-size-normal {
    font-size: 38px;
  }
}
.heading-size-small {
  font-size: 1.625rem;
  line-height: 1.33;
}

.heading-size-small {
  font-size: 24px;
}

@media screen and (min-width: 480px) {
  .heading-size-small {
    font-size: calc(24px + 2 * (100vw - 480px) / 1120);
  }
}
@media screen and (min-width: 1600px) {
  .heading-size-small {
    font-size: 26px;
  }
}
.heading-size-smaller {
  font-size: 1.375rem;
  line-height: 1.33;
}

.heading-size-smaller {
  font-size: 17px;
}

@media screen and (min-width: 480px) {
  .heading-size-smaller {
    font-size: calc(17px + 5 * (100vw - 480px) / 1120);
  }
}
@media screen and (min-width: 1600px) {
  .heading-size-smaller {
    font-size: 22px;
  }
}
.text-size-large {
  font-size: 1.625rem;
  line-height: 1.4;
  font-weight: 300;
}

.text-size-normal {
  font-size: 1.125rem;
  line-height: 1.5;
}

.text-size-normal {
  font-size: 16px;
}

@media screen and (min-width: 480px) {
  .text-size-normal {
    font-size: calc(16px + 2 * (100vw - 480px) / 1120);
  }
}
@media screen and (min-width: 1600px) {
  .text-size-normal {
    font-size: 18px;
  }
}
.text-size-small {
  font-size: 14px;
}

.text-size-xsmall {
  font-size: 12px;
}

.two-tone-text .highlight {
  display: block;
}

em {
  font-style: normal;
  color: var(--color__purple-dark);
}

body,
html {
  scroll-behavior: smooth;
  background-color: var(--color__grey-lighter);
}

.element-width--full {
  max-width: 90%;
  margin: 0 auto;
}

.element-width--wide {
  max-width: var(--element-width-wide, 1440px);
  margin: 0 auto;
}

.element-width--content {
  max-width: var(--element-width-content, 950px);
  margin: 0 auto;
}

.uses-max-text-width {
  max-width: 41.25rem;
}

.max-width-col-2 {
  display: block;
}

.max-width-col-2 > .uses-max-text-width {
  width: unset;
  max-width: unset;
}

.clearfix {
  display: block;
  clear: both;
}

.block-section:not(.has-custom-animation).awaiting-animation .block-section-wrapper {
  opacity: 0;
  position: relative;
  transform: translateY(3vh);
}

.block-section:not(.has-custom-animation).should-animate .block-section-wrapper {
  opacity: 1;
  transform: translateY(0);
  transition: all 550ms ease-in-out;
}

/* for debugging */
body.debug {
  position: relative;
}

body.debug::after {
  content: "";
  position: fixed;
  top: 0;
  left: 50%;
  width: 1px;
  height: 100%;
  background-color: red;
  z-index: 9999;
}

.block-section {
  overflow: hidden;
  margin: var(--spacing-block) auto;
  /* WP BG COLORS HERE */
}

@media screen and (max-width: 849px) {
  .block-section {
    margin: var(--spacing-block-mobile) auto;
  }
}
.block-section.has-border-top {
  border-top: 0.0625rem solid var(--color__grey-light);
  padding-top: calc(var(--spacing-block) / 2);
}

@media screen and (max-width: 849px) {
  .block-section.has-border-top {
    padding-top: var(--spacing-block-mobile);
  }
}
.block-section.no-padding-top {
  margin-top: calc(var(--spacing-block) * -0.6);
}

.block-section.has-background:not(.has-inner-background-color) {
  margin: 0 auto;
  padding: var(--spacing-block) 0;
}

@media screen and (max-width: 849px) {
  .block-section.has-background:not(.has-inner-background-color) {
    margin: 0 auto;
    padding: var(--spacing-block-mobile) 0;
  }
}
.block-section.has-white-background-color {
  background-color: var(--color__white);
  color: var(--color__grey);
}

.block-section.has-white-background-color .two-tone-text {
  color: var(--color__grey);
}

.block-section.has-white-background-color .two-tone-text em,
.block-section.has-white-background-color .two-tone-text .highlight {
  color: var(--color__purple-dark);
}

.block-section.has-white-background-color .highlight {
  color: var(--color__purple-dark);
}

.block-section.has-white-background-color a:not(.stm-button) {
  color: var(--color__grey);
}

.block-section.has-purple-light-background-color {
  background-color: var(--color__purple-light);
  color: var(--color__grey-dark);
}

.block-section.has-purple-light-background-color .two-tone-text {
  color: var(--color__grey);
}

.block-section.has-purple-light-background-color .two-tone-text em,
.block-section.has-purple-light-background-color .two-tone-text .highlight {
  color: var(--color__grey-dark);
}

.block-section.has-purple-light-background-color .highlight {
  color: var(--color__grey-dark);
}

.block-section.has-purple-light-background-color a:not(.stm-button) {
  color: var(--color__grey-dark);
}

.block-section.has-grey-lighter-background-color {
  background-color: var(--color__grey-lighter);
  color: var(--color__grey);
}

.block-section.has-grey-lighter-background-color .two-tone-text {
  color: var(--color__grey);
}

.block-section.has-grey-lighter-background-color .two-tone-text em,
.block-section.has-grey-lighter-background-color .two-tone-text .highlight {
  color: var(--color__purple-dark);
}

.block-section.has-grey-lighter-background-color .highlight {
  color: var(--color__purple-dark);
}

.block-section.has-grey-lighter-background-color a:not(.stm-button) {
  color: var(--color__grey);
}

.block-section.has-grey-light-background-color {
  background-color: var(--color__grey-light);
  color: var(--color__grey-dark);
}

.block-section.has-grey-light-background-color .two-tone-text {
  color: var(--color__grey);
}

.block-section.has-grey-light-background-color .two-tone-text em,
.block-section.has-grey-light-background-color .two-tone-text .highlight {
  color: var(--color__grey-dark);
}

.block-section.has-grey-light-background-color .highlight {
  color: var(--color__grey-dark);
}

.block-section.has-grey-light-background-color a:not(.stm-button) {
  color: var(--color__grey-dark);
}

.block-section.has-grey-dark-background-color {
  background-color: var(--color__grey-dark);
  color: var(--color__grey-light);
}

.block-section.has-grey-dark-background-color .two-tone-text {
  color: var(--color__grey-light);
}

.block-section.has-grey-dark-background-color .two-tone-text em,
.block-section.has-grey-dark-background-color .two-tone-text .highlight {
  color: var(--color__purple-medium);
}

.block-section.has-grey-dark-background-color .highlight {
  color: var(--color__purple-medium);
}

.block-section.has-grey-dark-background-color a:not(.stm-button) {
  color: var(--color__grey-light);
}

.block-section.core-block .block-section-wrapper {
  max-width: var(--element-width-wide, 950px);
  margin: 0 auto;
}

.block-section.has-inner-background-color.has-background:not(.hide-background-pattern) {
  background-color: transparent !important;
  --current-inner-background-color: var(--color__white);
}

.block-section.has-inner-background-color.has-background:not(.hide-background-pattern).has-white-background-color {
  --current-inner-background-color: var(--color__white);
}

.block-section.has-inner-background-color.has-background:not(.hide-background-pattern).has-purple-light-background-color {
  --current-inner-background-color: var(--color__purple-light);
}

.block-section.has-inner-background-color.has-background:not(.hide-background-pattern).has-grey-lighter-background-color {
  --current-inner-background-color: var(--color__grey-light);
}

.block-section.has-inner-background-color.has-background:not(.hide-background-pattern).has-grey-light-background-color {
  --current-inner-background-color: var(--color__grey-light);
}

.block-section.has-inner-background-color.has-background:not(.hide-background-pattern).has-grey-dark-background-color {
  --current-inner-background-color: var(--color__grey-dark);
}

.block-section.hide-background-pattern {
  padding-top: var(--spacing-block-mobile);
  padding-bottom: var(--spacing-block-mobile);
}

.block-section.hide-background-pattern.has-page-background-color {
  background-color: var(--color__grey-lighter) !important;
}

.block-section.hide-background-pattern.has-page-background-color.has-white-background-color .inner-bg-element {
  background-color: var(--color__white);
}

.block-section.hide-background-pattern.has-page-background-color.has-purple-light-background-color .inner-bg-element {
  background-color: var(--color__purple-light);
}

.block-section.hide-background-pattern.has-page-background-color.has-grey-lighter-background-color .inner-bg-element {
  background-color: var(--color__grey-light);
}

.block-section.hide-background-pattern.has-page-background-color.has-grey-light-background-color .inner-bg-element {
  background-color: var(--color__grey-light);
}

.block-section.hide-background-pattern.has-page-background-color.has-grey-dark-background-color .inner-bg-element {
  background-color: var(--color__grey-dark);
}

.block-section.has-inner-background-color.has-background.hide-background-pattern {
  margin: 0 auto;
  background-color: var(--color__grey-lighter) !important;
  --current-inner-background-color: var(--color__white);
}

.block-section.has-inner-background-color.has-background.hide-background-pattern.has-white-background-color {
  --current-inner-background-color: var(--color__white);
}

.block-section.has-inner-background-color.has-background.hide-background-pattern.has-purple-light-background-color {
  --current-inner-background-color: var(--color__purple-light);
}

.block-section.has-inner-background-color.has-background.hide-background-pattern.has-grey-lighter-background-color {
  --current-inner-background-color: var(--color__grey-light);
}

.block-section.has-inner-background-color.has-background.hide-background-pattern.has-grey-light-background-color {
  --current-inner-background-color: var(--color__grey-light);
}

.block-section.has-inner-background-color.has-background.hide-background-pattern.has-grey-dark-background-color {
  --current-inner-background-color: var(--color__grey-dark);
}

.block-section.hide-background-pattern + .block-section.has-border-top:not(.hide-background-pattern):not(.has-background), .block-section.has-background + .block-section.has-border-top:not(.hide-background-pattern):not(.has-background) {
  margin-top: 0;
}

.entry-content > .block-section.hide-background-pattern:last-child {
  margin-bottom: 0;
  padding-bottom: var(--spacing-block);
}

@media screen and (max-width: 849px) {
  .entry-content > .block-section.hide-background-pattern:last-child {
    padding-bottom: var(--spacing-block-mobile);
  }
}
.block-section-wrapper {
  width: 90%;
  margin: 0 auto;
}

.element-width--content,
.element-width--wide {
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
}

.element-width--content {
  width: var(--element-width-content);
}

@media screen and (min-width: 850px) {
  .element-width--content {
    max-width: 66%;
  }
}
@media screen and (min-width: 1440px) {
  .element-width--content {
    max-width: 50%;
  }
}
.element-width--wide {
  width: var(--element-width-wide);
}

/*
	Only used for custom colors in wysiwyg acf fields.
	Ignore if not used. See inc/acf.php
*/
.dc-highlight-red {
  color: #f4163b !important;
}

.dc-highlight-green {
  color: #3dd48b !important;
}

.dc-highlight-black {
  color: #212322 !important;
}

/**
 * Vendor
 */
html.lenis, html.lenis body {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-smooth iframe {
  pointer-events: none;
}

.lenis.lenis-stopped {
  overflow: auto !important;
}

/**
 * UI files
 */
button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
}

a {
  color: inherit;
}

.arrow-button {
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 800px;
  cursor: pointer;
  transition: all 0.4s ease-in-out;
}

.arrow-button svg {
  fill: currentColor;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  pointer-events: none;
}

.arrow-button:hover {
  opacity: 0.8;
}

.stm-button,
.stm-circle-icon {
  transition: background-color 0.4s ease-in-out, color 0.4s ease-in-out;
  cursor: pointer;
}

.stm-circle-icon {
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 100%;
  overflow: hidden;
  background-color: var(--color__grey-light);
  color: var(--color__black) !important;
}

.stm-circle-icon i {
  font-size: 1.125rem;
}

.stm-circle-icon:hover {
  background-color: var(--color__grey);
  color: var(--color__white) !important;
}

.stm-circle-icon.purple {
  background-color: var(--color__purple);
}

.stm-circle-icon.purple:hover {
  background-color: var(--color__purple-dark);
  color: var(--color__white) !important;
}

.stm-circle-icon.lighter {
  background-color: var(--color__grey-lighter);
}

.stm-circle-icon.lighter:hover {
  color: var(--color__purple-dark) !important;
}

.uses-underlined-links a,
.label.underlined,
.stm-text-link.underlined .text {
  text-decoration: underline;
  text-underline-offset: 0.4em;
  -webkit-text-decoration-color: var(--color__purple);
  text-decoration-color: var(--color__purple);
  transition: all 150ms ease-in-out;
}

.uses-underlined-links a:hover .text, .uses-underlined-links a:focus .text,
.label.underlined:hover .text,
.label.underlined:focus .text,
.stm-text-link.underlined:hover .text,
.stm-text-link.underlined:focus .text {
  text-underline-offset: 0.2em;
}

.stm-text-link {
  display: inline-flex;
  align-items: center;
  text-decoration: unset;
}

.stm-text-link .btn-icon {
  margin-left: 0.3125rem;
}

.stm-text-link .icon:before {
  font-size: 0.625rem;
}

.stm-text-link.back-link .btn-icon {
  order: 1;
  margin-right: 0.3125rem;
  margin-left: 0;
}

.stm-text-link.back-link .text {
  order: 2;
}

.stm-button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  padding: 0.3125rem 1.25rem;
  line-height: 1.3;
  border-radius: 200px;
  color: var(--color__black);
  background-color: var(--color__purple-medium);
  font-size: var(--font-size-ui);
  font-weight: 500;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  cursor: pointer;
}

.stm-button.grey {
  background-color: var(--color__grey);
  color: var(--color__grey-lighter);
}

.stm-button.margin {
  margin: 2rem auto 0;
}

.stm-button:hover {
  background-color: var(--color__purple-dark);
  color: var(--color__white);
}

.stm-button.outlined {
  border: solid 1px currentColor;
  background: transparent;
}

.stm-button.outlined:hover {
  background: var(--color__grey-dark);
  border-color: var(--color__grey-dark);
  color: var(--color__white);
}

.stm-button.outlined:hover span.text {
  color: var(--color__white);
  transition: inherit;
}

.stm-button.bridge-login {
  background-color: var(--color__grey-lighter);
  color: var(--color__black);
  padding: 0 0 0 1.25rem;
}

.stm-button.bridge-login .btn-icon {
  background-color: var(--color__grey-light);
  border-radius: 100%;
  width: 1.6875rem;
  height: 1.6875rem;
  margin: 0.3125rem 0.3125rem 0.3125rem 0.9375rem;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.stm-button.bridge-login .btn-icon span {
  font-size: 0.6875rem;
}

.stm-button .btn-icon {
  margin-left: 0.625rem;
}

.stm-button .icon:before {
  font-size: 1rem;
}

@media screen and (max-width: 999px) {
  .stm-button .icon:before {
    font-size: 0.75rem;
  }
}
@media screen and (max-width: 999px) {
  .stm-button.mobile-icon-only {
    padding: 0;
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 100%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
  }
}
@media screen and (max-width: 999px) and (max-width: 999px) {
  .stm-button.mobile-icon-only {
    width: 2.375rem;
    height: 2.375rem;
  }
}
@media screen and (max-width: 999px) {
  .stm-button.mobile-icon-only .text {
    display: none !important;
  }
}
@media screen and (max-width: 999px) {
  .stm-button.mobile-icon-only .btn-icon {
    margin: 0;
    display: block !important;
  }
}
.stm-button.circle-icon {
  padding: 0;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 100%;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 999px) {
  .stm-button.circle-icon {
    width: 2.375rem;
    height: 2.375rem;
  }
}
.stm-button.circle-icon .text {
  display: none !important;
}

.stm-button.circle-icon .btn-icon {
  margin: 0;
  display: block !important;
}

.stm-button.circle-icon-medium {
  width: 2.375rem;
  height: 2.375rem;
  font-size: 1.3125rem;
}

.stm-button.circle-icon-medium i {
  font-size: 1.3125rem;
}

.stm-button--icon-arrow-up-right:not(.bridge-login):hover .btn-icon, .stm-button--icon-arrow-up-right:not(.bridge-login):focus .btn-icon {
  animation-name: arrow-woosh;
  animation-duration: 300ms;
}

@keyframes arrow-woosh {
  0% {
    opacity: 1;
    transform: scale(1) translateX(0) translateY(0) translateZ(0);
  }
  45% {
    opacity: 0;
    transform: scale(0.2) translateX(40px) translateY(-40px) translateZ(0);
  }
  50% {
    opacity: 0;
    transform: scale(-0.5) translateX(0) translateY(0) translateZ(0);
  }
  75% {
    opacity: 0;
    transform: scale(0) translateX(0) translateY(0) translateZ(0);
  }
  78% {
    opacity: 1;
    transform: scale(0.5) translateX(-30px) translateY(30px) translateZ(0);
  }
  100% {
    transform: scale(1) translateX(0) translateY(0) translateZ(0);
  }
}
@keyframes arrow-woosh-smaller {
  0% {
    opacity: 1;
    transform: scale(1) translateX(0) translateY(0) translateZ(0);
  }
  45% {
    opacity: 0;
    transform: scale(0.5) translateX(25px) translateY(-25px) translateZ(0);
  }
  50% {
    opacity: 0;
    transform: scale(-0.5) translateX(0) translateY(0) translateZ(0);
  }
  75% {
    opacity: 0;
    transform: scale(0) translateX(0) translateY(0) translateZ(0);
  }
  78% {
    opacity: 1;
    transform: scale(0.5) translateX(-10px) translateY(10px) translateZ(0);
  }
  100% {
    transform: scale(1) translateX(0) translateY(0) translateZ(0);
  }
}
.circle-image-wrapper {
  width: 15.375rem;
  height: 15.375rem;
  display: block;
}

@media screen and (min-width: 1000px) {
  .circle-image-wrapper {
    width: 22.25rem;
    height: 22.25rem;
    max-width: 25vw;
    max-height: 25vw;
  }
}
@media screen and (min-width: 1440px) {
  .circle-image-wrapper {
    max-width: 35vw;
    max-height: 35vw;
  }
}
@media screen and (min-width: 1000px) {
  .circle-image-wrapper.medium {
    width: 13.75rem;
    height: 13.75rem;
    max-width: 15vw;
    max-height: 15vw;
  }
}
@media screen and (min-width: 1440px) {
  .circle-image-wrapper.medium {
    width: 20rem;
    height: 20rem;
    max-width: 20vw;
    max-height: 20vw;
  }
}
.circle-image-wrapper img {
  width: 100%;
  height: 100%;
  border-radius: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  overflow: hidden;
  display: block;
}

.social-media-buttons-wrapper {
  display: flex;
  align-items: center;
  list-style: none;
  gap: 1rem;
}

.social-media-buttons-wrapper a {
  text-decoration: none;
  color: inherit;
}

.social-media-buttons-wrapper i {
  font-size: 24px;
}

.clickable-card:hover, .clickable-card:focus {
  cursor: pointer;
}

figcaption.caption {
  margin-top: 0.625rem;
  font-size: 0.875rem;
  text-align: right;
}

@font-face {
  font-family: "icon";
  src: url("/wp-content/themes/absmnew/dist/fonts/icons/icon.eot?t=1724918762177"); /* IE9*/
  src: url("/wp-content/themes/absmnew/dist/fonts/icons/icon.eot?t=1724918762177#iefix") format("embedded-opentype"), url("/wp-content/themes/absmnew/dist/fonts/icons/icon.woff2?t=1724918762177") format("woff2"), url("/wp-content/themes/absmnew/dist/fonts/icons/icon.woff?t=1724918762177") format("woff"), url("/wp-content/themes/absmnew/dist/fonts/icons/icon.ttf?t=1724918762177") format("truetype"), url("/wp-content/themes/absmnew/dist/fonts/icons/icon.svg?t=1724918762177#icon") format("svg"); /* iOS 4.1- */
}
[class^=icon-], [class*=" icon-"] {
  font-family: "icon" !important;
  font-size: 16px;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-arrow-down:before {
  content: "А";
}

.icon-arrow-left:before {
  content: "Б";
}

.icon-arrow-right:before {
  content: "В";
}

.icon-arrow-up-right:before {
  content: "Г";
}

.icon-arrow-up:before {
  content: "Д";
}

.icon-chevron-down:before {
  content: "Е";
}

.icon-chevron-left:before {
  content: "Ж";
}

.icon-chevron-right:before {
  content: "З";
}

.icon-chevron-up:before {
  content: "И";
}

.icon-close:before {
  content: "Й";
}

.icon-file:before {
  content: "К";
}

.icon-home:before {
  content: "Л";
}

.icon-linkedin:before {
  content: "М";
}

.icon-play:before {
  content: "Н";
}

.icon-search:before {
  content: "О";
}

.icon-x:before {
  content: "П";
}

.icon-youtube:before {
  content: "Р";
}

/**
 * Layout files
 */
body.medium-logo-color #topbar a:not(.stm-button) {
  color: var(--color__grey);
}

#topNavigation,
#topbar,
#topbar .content-wrapper,
#topbar .left,
#topbar .right {
  pointer-events: none;
}

#topbarNavigation {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  overflow: hidden;
  padding-bottom: 2.5rem;
  z-index: 9999;
  display: flex;
  flex-flow: column;
  pointer-events: none;
}

#topbarNavigation .left *,
#topbarNavigation .right *,
#topbarNavigation .breadcrumbs-wrapper * {
  pointer-events: initial;
}

#topbarNavigation #search-button,
#topbarNavigation .stm-text-link {
  position: relative;
  top: 0;
}

#topbarNavigation .menu-icon-text {
  opacity: 1;
  max-width: auto;
  overflow: hidden;
}

#topbarNavigation .menu-icon-text {
  max-width: 6249.9375rem;
  overflow: hidden;
  display: block;
}

#topbarNavigation.--menu-is-open {
  height: 100vh;
}

#topbarNavigation.--menu-is-open #search-button,
#topbarNavigation.--menu-is-open .stm-text-link {
  top: -12.5rem;
}

#topbarNavigation.--menu-is-open .menu-icon-text {
  max-width: 0px !important;
  transition: all 50ms ease-out;
}

#topbarNavigation.--menu-is-open .menu-icon-text {
  max-width: 2.75rem;
}

#topbarNavigation.--menu-is-open #toggle-menu {
  background-color: transparent;
}

#topbar {
  position: relative;
  z-index: 9999;
  margin: 0.9375rem 1.25rem;
  color: var(--color__white);
}

#topbar a:not(.stm-button) {
  color: inherit;
}

#topbar .left,
#topbar .menu-container,
#topbar .content-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#topbar .right {
  text-align: right;
}

@media screen and (max-width: 849px) {
  #topbar .right .bridge-login {
    display: none;
  }
}
body.main-navigation__is-visible #toggle-menu {
  transition: unset;
}

body.main-navigation__is-visible .stm-button.bridge-login .btn-icon span {
  font-size: 16px;
}

body.main-navigation__is-visible .stm-button.bridge-login .btn-icon span::before {
  font-size: 16px;
}

@media screen and (min-width: 1000px) {
  body.main-navigation__is-visible #topbarNavigation {
    position: fixed;
  }
}
#top-menu-buttons {
  margin-top: 0.625rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

#top-menu-buttons button {
  font-size: 1rem;
  padding: 0.625rem 0.9375rem;
  border-radius: 2.5rem;
  height: 2.125rem;
}

@media screen and (max-width: 849px) {
  #top-menu-buttons .label {
    display: none;
  }
  #top-menu-buttons button {
    font-size: 1.125rem;
  }
}
#search-button {
  margin-right: 0.625rem;
}

#search-button i {
  margin-right: 0.3125rem;
}

.breadcrumbs-wrapper {
  width: 100%;
  position: relative;
  z-index: 500;
  color: var(--color__white);
}

.breadcrumbs-wrapper button,
.breadcrumbs-wrapper ol.breadcrumbs {
  color: inherit;
}

@media screen and (min-width: 850px) {
  .breadcrumbs-wrapper {
    margin: 1.25rem 0 3.75rem 0;
  }
  .breadcrumbs-wrapper #breadbrumbs-mobile-toggle {
    display: none;
  }
}
@media screen and (max-width: 849px) {
  .breadcrumbs-wrapper {
    margin: 0.3125rem 0 0 0;
    display: flex;
  }
  .breadcrumbs-wrapper button {
    height: auto;
    padding: 0 0.625rem;
    margin: 0 0.9375rem;
    background-color: transparent;
    position: relative;
  }
  .breadcrumbs-wrapper:not(.expanded) button:before, .breadcrumbs-wrapper:not(.expanded) button:after {
    content: "";
    display: block;
    width: 0.3125rem;
    height: 0.3125rem;
    border: 2px solid transparent;
    transform: rotate(-45deg) translateY(-50%);
    position: absolute;
    top: 50%;
  }
  .breadcrumbs-wrapper:not(.expanded) button:before {
    border-top-color: inherit;
    border-left-color: inherit;
    left: 0.125rem;
  }
  .breadcrumbs-wrapper:not(.expanded) button:after {
    border-bottom-color: inherit;
    border-right-color: inherit;
    right: 0.125rem;
  }
  .breadcrumbs-wrapper:not(.expanded) button:hover:before, .breadcrumbs-wrapper:not(.expanded) button:focus:before {
    border-top-color: inherit;
    border-left-color: inherit;
    left: 0;
  }
  .breadcrumbs-wrapper:not(.expanded) button:hover:after, .breadcrumbs-wrapper:not(.expanded) button:focus:after {
    border-bottom-color: inherit;
    border-right-color: inherit;
    right: 0;
  }
  .breadcrumbs-wrapper.expanded ol.breadcrumbs {
    -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
    width: 100%;
  }
  .breadcrumbs-wrapper.expanded ol.breadcrumbs li {
    display: block;
    width: 100%;
  }
  .breadcrumbs-wrapper.expanded ol.breadcrumbs li:after {
    display: none;
  }
  .breadcrumbs-wrapper.expanded ol.breadcrumbs li.previous-page a {
    font-weight: normal;
  }
  .breadcrumbs-wrapper.expanded ol.breadcrumbs li.current-page {
    padding: 0;
  }
  .breadcrumbs-wrapper.expanded ol.breadcrumbs li.show-hide-page {
    display: inline-block;
  }
  .breadcrumbs-wrapper.expanded button {
    text-decoration: unset;
    position: absolute;
    top: 1.25rem;
    right: -1.25rem;
    align-items: flex-end;
  }
  .breadcrumbs-wrapper.expanded button:before {
    font-family: "icon" !important;
    font-size: 16px;
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "Й";
    display: block;
    width: 2.75rem;
    height: 2.75rem;
    font-size: 0.625rem;
    color: inherit;
    text-decoration: unset;
  }
  .breadcrumbs-wrapper.expanded button:before {
    right: -0.25rem;
    left: auto;
  }
  .breadcrumbs-wrapper.expanded button:after {
    left: -0.25rem;
    right: auto;
  }
  .breadcrumbs-wrapper.expanded button:hover:before, .breadcrumbs-wrapper.expanded button:focus:before {
    right: -0.125rem;
  }
  .breadcrumbs-wrapper.expanded button:hover:after, .breadcrumbs-wrapper.expanded button:focus:after {
    left: -0.125rem;
  }
}
ol.breadcrumbs {
  list-style: none;
  padding: 0;
  margin: 0;
  border-radius: 2.5rem;
  overflow: hidden;
  display: inline-block;
  background: rgba(186, 193, 203, 0.3);
}

@media screen and (max-width: 849px) {
  ol.breadcrumbs {
    padding: 0.3125rem 0.625rem;
    border-radius: var(--element-border-radius);
  }
}
ol.breadcrumbs li {
  display: inline-block;
}

@media screen and (max-width: 849px) {
  ol.breadcrumbs li {
    display: inline;
  }
}
ol.breadcrumbs li:not(.current-page):after {
  content: "|";
  padding: 0.25rem 0.125rem 0.25rem 0.1875rem;
}

@media screen and (min-width: 850px) {
  ol.breadcrumbs li:first-child a {
    padding-left: 0.875rem;
  }
}
@media screen and (max-width: 849px) {
  ol.breadcrumbs li.show-hide-page {
    display: none;
  }
  ol.breadcrumbs li.previous-page a {
    font-weight: bold;
  }
  ol.breadcrumbs li.previous-page:after {
    display: none;
  }
}
ol.breadcrumbs a {
  text-decoration: none;
  padding: 0.25rem 0;
  font-weight: normal;
}

@media screen and (max-width: 849px) {
  .label-home {
    width: 0;
    height: 0;
    display: block;
    overflow: hidden;
  }
}
.icon-home {
  font-size: 0.875rem;
  position: relative;
  top: 0.125rem;
}

@media screen and (min-width: 850px) {
  .icon-home {
    display: none;
  }
}
.current-page {
  font-weight: bold;
  color: inherit;
  padding: 0.25rem 0.875rem 0.25rem 0.125rem;
}

body.main-navigation__is-visible .breadcrumbs-wrapper, body.search__is-visible .breadcrumbs-wrapper {
  opacity: 0;
  pointer-events: none;
}

body.medium-logo-color .breadcrumbs-wrapper {
  color: var(--color__grey);
}

@media screen and (min-width: 1000px) {
  body.main-navigation__is-visible.admin-bar #main-menu.open {
    top: 2.1875rem;
  }
}
#main-menu {
  color: var(--color__grey-lighter);
  width: 100%;
  left: 0;
  right: 0;
  height: calc(100vh - 100px);
  overflow: hidden;
  position: fixed;
  top: -150vh;
  z-index: 105;
  padding: 0;
  flex: 1;
  pointer-events: none;
  transition: all 350ms ease-out;
}

#main-menu ul li {
  list-style-type: none;
}

@media screen and (max-width: 999px) {
  #main-menu {
    background-color: #2D2D35;
    padding: 0 1.25rem 1.875rem 1.25rem;
  }
  #main-menu > div {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  #main-menu img {
    display: none;
  }
}
@media screen and (min-width: 1000px) {
  #main-menu {
    top: -100vh;
    height: 55vh;
    width: 87.5rem;
    max-width: calc(100% - 60px);
    padding: 1.5625rem 0 0 0;
    left: 50%;
    transform: translateX(-50%);
  }
}
@media screen and (min-width: 1600px) {
  #main-menu {
    max-width: calc(100% - 300px);
  }
}
#main-menu.open {
  pointer-events: all;
  top: 0;
}

@media screen and (min-width: 1000px) {
  #main-menu.open {
    overflow: visible;
  }
}
@media screen and (max-width: 999px) {
  #main-menu.open {
    top: 6.25rem;
  }
}
#main-menu .menu-item {
  list-style: none;
  font-weight: bold;
}

#main-menu .menu-item a {
  color: inherit;
  transition: ease-in-out 150ms;
}

@media screen and (min-width: 1000px) {
  #main-menu .menu-item a:hover, #main-menu .menu-item a:focus {
    text-decoration: underline;
  }
}
#main-menu #menu-main-menu > ul li a:hover, #main-menu #menu-main-menu > ul li a:focus {
  text-decoration: none !important;
}

#main-menu [aria-current]:not([aria-current=false]) {
  text-decoration: underline;
}

@media screen and (max-width: 999px) {
  body.admin-bar #main-menu.open {
    top: 7.5rem;
  }
}
nav.menu-main-menu-container {
  display: flex;
}

@media screen and (max-width: 999px) {
  nav.menu-main-menu-container {
    flex-direction: column;
  }
  nav.menu-main-menu-container > ul {
    width: 100%;
  }
}
@media screen and (min-width: 1000px) {
  nav.menu-main-menu-container {
    align-items: center;
  }
}
#menu-main-menu {
  display: flex;
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
}

@media screen and (max-width: 999px) {
  #menu-main-menu {
    background-color: #2D2D35;
    flex-direction: column;
    position: absolute;
    top: 0;
    left: 1.25rem;
  }
}
@media screen and (min-width: 1000px) {
  #menu-main-menu {
    background-color: #33323B;
    flex-wrap: wrap;
    justify-content: center;
    border-radius: 1.25rem;
  }
  #menu-main-menu .back-link-wrapper {
    display: none;
  }
}
#menu-main-menu > li {
  display: inline-block;
  margin: 0;
  padding: 0;
}

#menu-main-menu > li > a {
  overflow: hidden;
}

#menu-main-menu > li > a span {
  pointer-events: none;
}

@media screen and (min-width: 1000px) {
  #menu-main-menu > li > a {
    padding: 0.25rem 1.25rem;
    height: 100%;
    display: block;
    border-radius: 5rem;
  }
}
@media screen and (max-width: 1439px) {
  #menu-main-menu > li > a span {
    display: none;
  }
}
@media screen and (min-width: 1000px) {
  #menu-main-menu > li > .sub-menu {
    display: none;
  }
}
#menu-main-menu > li .sub-menu {
  width: 100%;
}

@media screen and (max-width: 999px) {
  #menu-main-menu > li .sub-menu {
    position: absolute;
    top: 0;
    left: 100vw;
    background-color: #2D2D35;
    height: 100%;
    transition: left 150ms ease-in-out;
  }
}
@media screen and (min-width: 1000px) and (max-width: 1440px) {
  #menu-main-menu > li .sub-menu {
    width: calc(100% + 150px);
  }
}
@media screen and (min-width: 1000px) {
  #menu-main-menu > li.active > a {
    background-color: var(--color__purple-medium);
    color: var(--color__grey-dark);
    text-decoration: none !important;
  }
  #menu-main-menu > li.active > a:hover, #menu-main-menu > li.active > a:focus {
    text-decoration: none;
  }
}
@media screen and (max-width: 999px) {
  #menu-main-menu > li.active .sub-menu.visible {
    left: 0;
  }
}
#menu-main-menu > li.active > .sub-menu {
  display: block;
}

@media screen and (min-width: 1000px) {
  #menu-main-menu > li.active > .sub-menu {
    position: fixed;
    top: 8.75rem;
    left: 0;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding-left: 16.25rem;
  }
  #menu-main-menu > li.active > .sub-menu:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 13.75rem;
    width: 0.0625rem;
    height: calc(100% - 50px);
    background-color: var(--color__grey);
  }
  #menu-main-menu > li.active > .sub-menu::before {
    content: "";
    display: block;
    clear: both;
    position: absolute;
    width: 200vw;
    height: 100%;
    background-color: #2D2D35;
    bottom: -3.125rem;
    left: -50vw;
    z-index: -1;
  }
  #menu-main-menu > li.active > .sub-menu > li {
    flex-shrink: 0;
    flex-grow: 0;
    width: 30%;
    margin-bottom: 1.875rem;
  }
  #menu-main-menu > li.active > .sub-menu > li > a {
    font-size: 1.5rem;
    color: var(--color__purple-medium);
  }
}
@media screen and (min-width: 1440px) {
  #menu-main-menu > li.active > .sub-menu {
    top: 10rem;
    padding-left: 28.125rem;
  }
  #menu-main-menu > li.active > .sub-menu:after {
    left: 23.75rem;
  }
  #menu-main-menu > li.active > .sub-menu > li {
    width: 30%;
    margin-bottom: 2.5rem;
  }
  #menu-main-menu > li.active > .sub-menu > li:nth-child(3n) {
    margin-right: 0;
  }
}
#menu-main-menu a {
  font-weight: normal;
  font-size: 1rem;
  text-decoration: none;
}

@media screen and (min-width: 1600px) {
  #menu-main-menu a {
    font-size: 1.125rem;
  }
}
#menu-main-menu > .sub-menu {
  max-height: 80vh;
  overflow: auto;
}

#menu-main-menu .sub-menu {
  margin: 0;
  padding: 0;
}

#menu-main-menu .sub-menu > li {
  margin: 0;
  padding: 0;
}

@media screen and (min-width: 1000px) and (max-width: 1440px) {
  #menu-main-menu .sub-menu a {
    line-height: 1;
  }
}
#menu-main-menu .custom-deep-link a {
  margin-left: 1.25rem;
}

#menu-main-menu .custom-deep-link a[aria-current]:not([aria-current=false]) {
  text-decoration: none;
}

@media screen and (min-width: 1000px) {
  #menu-main-menu .custom-deep-link a:hover, #menu-main-menu .custom-deep-link a:focus {
    text-decoration: underline !important;
  }
}
#menu-main-menu .custom-deep-link.active a {
  text-decoration: none;
}

@media screen and (min-width: 1000px) {
  #main-menu .sub-menu > li > .sub-menu > .featured-link {
    display: none;
  }
  #main-menu .featured-section-link a {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 35;
  }
  #main-menu .featured-section-link img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    height: 140%;
    width: 140%;
    max-width: 100%;
    max-height: 100%;
    z-index: 25;
    -o-object-fit: cover;
       object-fit: cover;
    transform-origin: center center;
    transition: all 150ms ease-in-out;
  }
  #main-menu .featured-section-link a {
    z-index: 30;
    padding: 0.9375rem 1.25rem 1.25rem 1.25rem;
    z-index: 35;
    display: block;
    color: var(--color__grey-lighter) !important;
  }
  #main-menu .featured-section-link a:hover, #main-menu .featured-section-link a:focus {
    cursor: pointer;
  }
  #main-menu .featured-section-link a .stm-button {
    position: absolute;
    bottom: 1.25rem;
    right: 1.25rem;
  }
  #main-menu .featured-section-link:hover img, #main-menu .featured-section-link:focus img {
    max-height: 110%;
    max-width: 110%;
    transition: all 350ms ease-in-out;
  }
  #main-menu .featured-section-link:hover .stm-button, #main-menu .featured-section-link:focus .stm-button {
    background-color: var(--color__grey-dark);
    color: var(--color__grey-lighter);
    transition: all 350ms ease-out;
  }
  #main-menu .featured-section-link:hover .btn-icon, #main-menu .featured-section-link:focus .btn-icon {
    animation-name: arrow-woosh;
    animation-duration: 300ms;
  }
  #main-menu .featured-section-link:hover .btn-icon, #main-menu .featured-section-link:focus .btn-icon {
    animation-name: arrow-woosh-smaller;
  }
  #main-menu .featured-section-link:before {
    content: "";
    display: block;
    background: linear-gradient(0deg, rgba(26, 21, 46, 0.4) 0%, rgba(26, 21, 46, 0.4) 100%);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 30;
    pointer-events: none;
  }
  #main-menu.open li.active .featured-section-link,
#main-menu .secondary-menu-content {
    position: absolute;
    top: 12.5rem;
    left: 0;
  }
}
@media screen and (min-width: 1000px) and (min-width: 1440px) {
  #main-menu.open li.active .featured-section-link,
#main-menu .secondary-menu-content {
    left: 3.75rem;
  }
}
@media screen and (min-width: 1000px) {
  #main-menu .secondary-menu-content,
#main-menu .secondary-menu-link-wrapper {
    pointer-events: none;
  }
  #main-menu .secondary-menu-content > a,
#main-menu .secondary-menu-link-wrapper > a {
    pointer-events: all;
  }
}
@media screen and (min-width: 1000px) {
  #main-menu.open li.active .featured-section-link,
#main-menu .secondary-menu-link-wrapper {
    width: 11.25rem;
    height: 10.125rem;
    display: block;
    border-radius: var(--element-border-radius);
    overflow: hidden;
    margin-bottom: 1.25rem;
  }
}
@media screen and (min-width: 1000px) and (min-width: 1440px) {
  #main-menu.open li.active .featured-section-link,
#main-menu .secondary-menu-link-wrapper {
    width: 15rem;
    height: 13.5rem;
  }
}
@media screen and (min-width: 1000px) {
  #main-menu.open li.active .featured-section-link {
    top: 0;
    z-index: 8888888;
  }
}
@media screen and (min-width: 1000px) and (max-width: 1440px) {
  #menu-main-menu {
    margin-left: 10rem;
  }
}
.secondary-menu-content .stm-button--icon-arrow-up-right .btn-icon {
  background-color: transparent;
}

.secondary-menu-content .stm-button--icon-arrow-up-right:hover .btn-icon, .secondary-menu-content .stm-button--icon-arrow-up-right:focus .btn-icon {
  background-color: transparent;
  animation-name: unset;
  animation-duration: 550ms;
}

@media screen and (max-width: 999px) {
  body.main-navigation__is-visible #topbarNavigation,
body.main-navigation__is-visible #main-menu {
    background-color: #2D2D35;
  }
}
@media screen and (max-width: 999px) {
  #menu-main-menu {
    min-height: 60vh;
  }
  #main-menu {
    width: calc(100% - 20px);
  }
  #main-menu .back-link {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color__purple-medium);
    width: 2.375rem;
    height: 2.375rem;
    border-radius: 100%;
    margin-bottom: 1.25rem;
  }
  #main-menu .back-link i {
    color: var(--color__grey);
    font-size: 0.75rem;
    pointer-events: none;
  }
  #main-menu li {
    width: 100%;
  }
  #main-menu li a {
    display: flex;
    justify-content: space-between;
    width: calc(100% - 25px);
  }
  #main-menu li.featured-link {
    padding-bottom: 1.875rem;
    margin-bottom: 1.875rem;
    border-bottom: 0.0625rem solid var(--color__grey);
  }
  #main-menu li.featured-link a {
    color: var(--color__purple-medium);
    width: auto;
    justify-content: flex-start;
  }
  #main-menu li.featured-link a:after {
    margin-left: 0.625rem;
  }
  #main-menu li.featured-link .stm-button {
    display: none;
  }
  #main-menu li.featured-link > a:after, #main-menu li.menu-item-has-children > a:after {
    display: inline-block;
    font-family: "icon" !important;
    font-size: 16px;
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "В";
    font-size: 0.75rem;
  }
}
#toggle-menu .menu-icon-text {
  margin-right: 0.625rem;
}

@media screen and (max-width: 849px) {
  #toggle-menu {
    margin-right: -0.625rem;
  }
}
.menu-lines {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  align-items: flex-end;
  width: 1.875rem;
  height: 0.875rem;
}

@media screen and (max-width: 849px) {
  .menu-lines {
    width: 1.5rem;
    height: 1rem;
  }
}
.menu-lines > div {
  width: 1.5rem;
  height: 0.09375rem;
  background-color: var(--color__grey-dark);
  max-width: 1.5rem;
  overflow: hidden;
  transform-origin: center;
  transition: all 150ms ease-out;
}

#toggle-menu:hover, #toggle-menu:focus {
  color: var(--color__grey-lighter);
}

#toggle-menu:hover .menu-lines > div, #toggle-menu:focus .menu-lines > div {
  background-color: var(--color__grey-lighter);
}

body.main-navigation__is-visible #toggle-menu {
  margin-top: -1.25rem;
  max-width: 2.75rem;
  overflow: hidden;
}

@media screen and (min-width: 1000px) {
  body.main-navigation__is-visible #toggle-menu {
    margin-top: -2.8125rem;
  }
}
body.main-navigation__is-visible .menu-lines {
  justify-content: center;
}

body.main-navigation__is-visible .menu-lines > div {
  background-color: var(--color__grey-lighter);
}

body.main-navigation__is-visible .menu-lines > div:nth-child(1) {
  transform: rotate(45deg) translateX(2px) translateY(2px);
}

body.main-navigation__is-visible .menu-lines > div:nth-child(2) {
  max-width: 0;
}

body.main-navigation__is-visible .menu-lines > div:nth-child(3) {
  transform: rotate(-45deg);
}

.site-footer {
  margin-top: -0.625rem;
  position: relative;
  background: var(--color__grey-dark, #1e1e1e);
  border-top-left-radius: 0.625rem;
  border-top-right-radius: 0.625rem;
  color: var(--color__white);
  overflow: hidden;
  /* For wpml dev site */
}

.site-footer a:not(.stm-button),
.site-footer p,
.site-footer ul,
.site-footer button {
  color: inherit;
  margin: 0;
  padding: 0;
}

.site-footer h2 {
  font-weight: 300;
}

.site-footer .footer-ending {
  padding: 5rem 0 3.125rem 0;
}

.site-footer .tagline + .stm-button {
  margin-top: 1.875rem;
}

@media screen and (max-width: 849px) {
  .site-footer .footer-content {
    padding-top: 8.75rem;
    position: relative;
  }
  .site-footer .footer-content-left {
    padding-bottom: 3.75rem;
  }
  .site-footer #scroll-to-top {
    position: absolute;
    top: 2.5rem;
    left: 0;
  }
  .site-footer .footer-ending-left {
    margin-bottom: 2.5rem;
  }
  .site-footer .footer-ending-left svg {
    width: 16rem;
    height: auto;
  }
}
@media screen and (min-width: 850px) {
  .site-footer .footer-content {
    padding: 3.75rem 0;
  }
  .site-footer .footer-content-right {
    text-align: right;
  }
  .site-footer .footer-ending-right {
    display: flex;
    justify-content: right;
  }
  .site-footer .footer-ending-right p {
    margin-left: 2.5rem;
  }
  .site-footer .footer-ending,
.site-footer .footer-content {
    display: flex;
    justify-content: space-between;
  }
  .site-footer .footer-ending > div,
.site-footer .footer-content > div {
    width: 36.25rem;
    max-width: 100%;
  }
  .site-footer .footer-ending {
    align-items: flex-end;
  }
}
.site-footer .social-links {
  display: flex;
  align-items: center;
  margin-bottom: 1.875rem;
}

.site-footer .social-links h3 {
  margin-right: 0.625rem;
}

@media screen and (max-width: 849px) {
  .site-footer .social-links a {
    margin-right: 0.625rem;
  }
  .site-footer .social-links h3 {
    margin-right: 0.9375rem;
  }
}
@media screen and (min-width: 850px) {
  .site-footer .social-links {
    justify-content: flex-end;
  }
  .site-footer .social-links a {
    margin-left: 0.625rem;
  }
}
.site-footer #scroll-to-top {
  background-color: transparent;
  margin-bottom: 2.5rem;
}

.site-footer #scroll-to-top .label {
  margin-right: 0.625rem;
}

.site-footer #scroll-to-top:hover, .site-footer #scroll-to-top:focus {
  cursor: pointer;
}

.site-footer .otgs-development-site-front-end,
.site-footer .wpml-ls-statics-footer {
  display: none;
}

.site-footer .footer-content,
.site-footer .footer-ending {
  position: relative;
  z-index: 5;
}

.site-footer .footer-orbit {
  position: absolute;
  bottom: 0;
  left: 50%;
  z-index: 0;
  transform: translateX(-50%);
  max-width: 75rem;
  height: auto;
}

.sn-logo path {
  transition: fill 350ms ease-out;
}

.sn-logo .letters {
  fill: var(--color__grey-lighter);
}

.sn-logo .orbit {
  fill: var(--color__purple);
}

@media screen and (max-width: 999px) {
  .sn-logo {
    width: 6.5rem;
  }
}
body.medium-logo-color:not(.main-navigation__is-visible) .sn-logo .letters {
  fill: var(--color__grey);
}

body.medium-logo-color:not(.main-navigation__is-visible) .sn-logo .orbit {
  fill: #977EFF;
}

body #body-overlay-bg {
  content: "";
  display: block;
  width: 100%;
  height: 70vh;
  flex: 1;
  padding: 3.125rem 0 0 0;
  position: fixed;
  top: -100vh;
  left: 0;
  right: 0;
  z-index: 95;
  opacity: 0;
  transition: all 350ms ease-out;
}

body.main-navigation__is-visible #body-overlay-bg {
  background: #2D2D35;
  top: 0;
  opacity: 1;
}

body.dc-post-grid-overlay-open #body-overlay-bg {
  background: var(--color__grey-lighter);
  top: 0;
  bottom: 0;
  height: 100vh;
  opacity: 0.5;
  transition: opacity 350ms ease-in-out;
}

body.search__is-visible {
  max-height: 100vh;
  overflow: hidden;
}

body.search__is-visible #topbarNavigation {
  transform: none !important;
}

body #search-button {
  background-color: var(--color__white);
  color: var(--color__grey-dark);
}

body #search-button:hover, body #search-button:focus {
  background-color: var(--color__purple-medium);
}

body.medium-logo-color #search-button {
  background-color: var(--color__grey);
  color: var(--color__white);
}

#search-button i,
#search-button .label {
  pointer-events: none !important;
}

#search-overlay {
  position: fixed;
  top: -10vh;
  bottom: -10vh;
  left: 50%;
  height: 120vh;
  width: 100vw;
  display: flex;
  justify-content: center;
  align-items: center;
  transform: translateX(-50%);
  transition: background-color 350ms ease-out;
}

#search-overlay:before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: linear-gradient(180deg, #444451 1.39%, #141414 100%);
  content: "";
  display: block;
  opacity: 0.5;
  z-index: 5;
}

@media screen and (max-width: 999px) {
  #search-overlay {
    align-items: flex-start;
    padding-top: 35%;
  }
}
#search-overlay[aria-hidden=true] {
  top: -150vh;
  bottom: 150vh;
  background-color: transparent;
}

#search-overlay[aria-hidden=true] form input[type=search] {
  opacity: 0;
  margin-top: 3.125rem;
}

#search-overlay form {
  width: 36.375rem;
  max-width: calc(100% - 40px);
  position: relative;
  z-index: 10;
}

#search-overlay form input[type=search] {
  outline-color: var(--color__purple);
  border: unset;
  background-image: unset;
  padding: 1.5625rem 0.625rem 1.5625rem 2.5rem !important;
  border-radius: var(--element-border-radius);
  background: var(--color__white) url(../images/icon-search.svg) no-repeat 0.9375rem center;
  background-size: 1.25rem 1.25rem;
  opacity: 1;
  transition: opacity 350ms ease-out, margin 350ms ease-out;
  margin-top: 0;
}

#search-overlay form.searchwp-form .swp-flex--gap-md {
  gap: 0;
}

#search-overlay .search-submit {
  position: absolute;
  left: -9999px;
}

input[type=search]::-webkit-search-cancel-button {
  /* Remove default */
  -webkit-appearance: none;
  /*Your new styles */
  height: 2.75rem;
  width: 2.75rem;
  background: url(../images/icon-close.svg) no-repeat center right;
  background-size: 0.875rem 0.9375rem;
  font-family: "icon" !important;
  font-size: 16px;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "Й";
  color: var(--color__grey);
}

input[type=search]::-webkit-search-cancel-button:after {
  font-family: "icon" !important;
  font-size: 16px;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "Й";
  display: block;
  width: 100%;
}

.searchwp-live-search-results {
  border: none;
  border-radius: var(--element-border-radius) !important;
}

.searchwp-live-search-result {
  margin: 0;
  padding: 0;
  z-index: 10;
}

.searchwp-live-search-result:hover, .searchwp-live-search-result:focus {
  background-color: var(--color__grey-lighter);
}

.searchwp-live-search-result h2 {
  color: var(--color__grey-dark);
  padding: 0;
  margin-bottom: -0.4375rem;
}

.searchwp-live-search-result a {
  text-decoration: none;
  width: 100%;
  display: block;
  padding: 0 1.875rem;
}

body {
  /*
  &.page-background-pattern-dark {
      background-image: url('../images/pattern-dark.svg');
  }
  */
}

body.uses-page-background-pattern {
  background-repeat: repeat;
  position: relative;
}

body.uses-page-background-pattern:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 18.75rem;
  background: linear-gradient(180deg, #E8EAEE 0%, rgba(232, 234, 238, 0) 100%);
  z-index: 10;
}

body.page-background-pattern-light {
  background-image: url("../images/pattern-light.svg");
}
