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

@charset "UTF-8";
/*--------------------------------------------------------------
# SASS Variables and Mixins. Do not output any css in here. if you need these make sure to @use "variables"
--------------------------------------------------------------*/
/*------- Media Query Sizes. Add your own --------*/
/*------- Panel Becomes Absolute Query  --------*/
/*------- Add your own breakpoints to the grid --------*/
/*--------------------------------------------------------------
Mixins
--------------------------------------------------------------*/
/*------- Retina --------*/
/*------- Deep Shadow Mixin --------*/
/*------- Lighten and shade colors --------*/
/*------- Fluid Font Lock --------*/
/*------- Sort Map by values --------*/
/*------- Grid --------*/
.has-vivid-purple-color {
  color: black !important;
}

.has-luminous-vivid-amber-color {
  color: #FFA700 !important;
}

/*--------------------------------------------------------------
# CSS Variables
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# CSS Variables. Change these to match your theme
--------------------------------------------------------------*/
:root {
  --font: "ivypresto-display", serif;
  --font-alt: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  --line-height: 1.4;
  --font-pre: "Source Code Pro", monospace;
  --line-height-pre: 22px;
  --article-font-size: 1.7rem;
  --black: #000000;
  --dark-grey: #4c545d;
  --grey: #cacaca;
  --blue: #007eac;
  --light-blue: rgba(0, 185, 235, 0.73);
  --dark-blue: #007fb0;
  --body-bg: white;
  --main-text-color: var(--black);
  --subtle-text-color: var(--grey);
  --site-top: var(--dark-blue);
  --footer-bg: var(--dark-grey);
  --header-bg: var(--dark-grey);
  --highlight: var(--blue);
  --highlight-alpha: var(--light-blue);
  --highlight-darkened: var(--dark-blue);
  --overlay-color: rgba(0, 0, 0,0.65);
}

/*--------------------------------------------------------------
# Layout CSS Variables. Probably don't need to touch.
--------------------------------------------------------------*/
:root {
  /*------- Menu Variables --------*/
  --nav-move: 800px;
  --sidebar-move: 1000px;
  --media-sidebar: 1000px;
  --desktop-menu-alignment: center;
  /*------- Layout --------*/
  --container: 1400px;
  --container-content: 70rem;
  --container-padding: 30px;
  --gutters: 15px;
  --gap: 30px;
  --grid-gap: 30px;
  --flex-gap: calc(var(--grid-gap) / 2);
  /*------- Panels --------*/
  --panel-left-width: 300px;
  --panel-right-width: 350px;
  /*------- Z-index --------*/
  --z-index-top: 99;
  --z-index-overlay: 95;
  --z-index-menu-button: 90;
  --z-index-menu: 80;
  --z-index-header: 75;
  --z-index-behind: -1;
}

/*--------------------------------------------------------------
# Basic Global Base Layout Stuff
--------------------------------------------------------------*/
html {
  box-sizing: border-box;
}

*,
*:before,
*:after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit;
}

html * {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.touchscroll {
  overflow-y: scroll;
  /* has to be scroll, not auto */
  -webkit-overflow-scrolling: touch;
}

.hide-scroll::-webkit-scrollbar {
  width: 0 !important;
}

.hide-scroll {
  -ms-overflow-style: none;
}

*:focus {
  outline: none;
}

/*--------------------------------------------------------------
# Panel Setup
--------------------------------------------------------------*/
.site-container {
  display: flex;
  position: relative;
  background: inherit;
}
.site-container > div {
  z-index: 90;
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 0%;
  transition: all 0.5s;
}
.site-container > div:empty {
  display: none;
}

#panel-right {
  order: 3;
}

/*--------------------------------------------------------------
# Sticky footer work.
--------------------------------------------------------------*/
/*
   - Sticky footer makes sure that the footer of the site is at the bottom no matter how small the content is.
*/
#page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  position: relative;
  flex-basis: 100%;
  z-index: 80;
  transition: none;
}

/*
	- By making sure there main content flexes as long as possible the footer below it will be at least or more than the height of the browser
 */
.site-content {
  flex: 1 0 auto;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
.screen-reader-skip {
  height: 0;
  overflow: hidden;
  width: 0;
  clip: rect(1px, 1px, 1px, 1px);
}

.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  color: white;
  background-color: black;
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 1.4rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/*------- responsive images --------*/
img {
  max-width: 100%;
  height: auto;
}

/*--------------------------------------------------------------
# Utility Classes
--------------------------------------------------------------*/
.hidden, .hide {
  display: none;
}

.clear:before,
.clear:after {
  content: "";
  display: table;
  table-layout: fixed;
}

.clear:after {
  clear: both;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  [data-toggle] svg {
    pointer-events: none;
  }
}
[data-toggle] {
  cursor: pointer;
}

[data-slide] {
  overflow: hidden;
}

/*--------------------------------------------------------------
# Layout Fixes for ie11
--------------------------------------------------------------*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  :root {
    --flex-gap: calc(var(--grid-gap) / 2);
  }

  .site-footer {
    min-height: 1px;
  }

  .cover-image, .background-image {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
  }

  .no-objectfit .cover-image {
    min-height: 300px;
    background-repeat: none;
  }

  .no-objectfit .background-image img,
.no-objectfit .cover-image img {
    display: none;
  }

  /*--------------------------------------------------------------
   # Flexbox grids. 99% same as css grid
   --------------------------------------------------------------*/
  .flex, .flex-grid, .grid {
    display: flex;
    margin-left: calc(-1 * calc(30px / 2));
    margin-left: calc(-1 * var(--flex-gap));
    margin-right: calc(-1 * calc(30px / 2));
    margin-right: calc(-1 * var(--flex-gap));
  }
  .flex > *, .flex-grid > *, .grid > * {
    margin-right: calc(30px / 2);
    margin-right: var(--flex-gap);
    margin-left: calc(30px / 2);
    margin-left: var(--flex-gap);
    flex-grow: 1;
    flex-shrink: 1;
  }
  div .flex .span-1, .flex.span-all-1 > *, div .flex-grid .span-1, .flex-grid.span-all-1 > *, div .grid .span-1, .grid.span-all-1 > * {
    width: calc(8.3333333333% - 30px);
    width: calc(8.3333333333% - var(--grid-gap));
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
  }
  div .flex > .span-1, div .flex-grid > .span-1, div .grid > .span-1 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex .span-2, .flex.span-all-2 > *, div .flex-grid .span-2, .flex-grid.span-all-2 > *, div .grid .span-2, .grid.span-all-2 > * {
    width: calc(16.6666666667% - 30px);
    width: calc(16.6666666667% - var(--grid-gap));
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
  }
  div .flex > .span-2, div .flex-grid > .span-2, div .grid > .span-2 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex .span-3, .flex.span-all-3 > *, div .flex-grid .span-3, .flex-grid.span-all-3 > *, div .grid .span-3, .grid.span-all-3 > * {
    width: calc(25% - 30px);
    width: calc(25% - var(--grid-gap));
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
  }
  div .flex > .span-3, div .flex-grid > .span-3, div .grid > .span-3 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex .span-4, .flex.span-all-4 > *, div .flex-grid .span-4, .flex-grid.span-all-4 > *, div .grid .span-4, .grid.span-all-4 > * {
    width: calc(33.3333333333% - 30px);
    width: calc(33.3333333333% - var(--grid-gap));
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
  }
  div .flex > .span-4, div .flex-grid > .span-4, div .grid > .span-4 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex .span-5, .flex.span-all-5 > *, div .flex-grid .span-5, .flex-grid.span-all-5 > *, div .grid .span-5, .grid.span-all-5 > * {
    width: calc(41.6666666667% - 30px);
    width: calc(41.6666666667% - var(--grid-gap));
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
  }
  div .flex > .span-5, div .flex-grid > .span-5, div .grid > .span-5 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex .span-6, .flex.span-all-6 > *, div .flex-grid .span-6, .flex-grid.span-all-6 > *, div .grid .span-6, .grid.span-all-6 > * {
    width: calc(50% - 30px);
    width: calc(50% - var(--grid-gap));
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
  }
  div .flex > .span-6, div .flex-grid > .span-6, div .grid > .span-6 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex .span-7, .flex.span-all-7 > *, div .flex-grid .span-7, .flex-grid.span-all-7 > *, div .grid .span-7, .grid.span-all-7 > * {
    width: calc(58.3333333333% - 30px);
    width: calc(58.3333333333% - var(--grid-gap));
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
  }
  div .flex > .span-7, div .flex-grid > .span-7, div .grid > .span-7 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex .span-8, .flex.span-all-8 > *, div .flex-grid .span-8, .flex-grid.span-all-8 > *, div .grid .span-8, .grid.span-all-8 > * {
    width: calc(66.6666666667% - 30px);
    width: calc(66.6666666667% - var(--grid-gap));
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
  }
  div .flex > .span-8, div .flex-grid > .span-8, div .grid > .span-8 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex .span-9, .flex.span-all-9 > *, div .flex-grid .span-9, .flex-grid.span-all-9 > *, div .grid .span-9, .grid.span-all-9 > * {
    width: calc(75% - 30px);
    width: calc(75% - var(--grid-gap));
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
  }
  div .flex > .span-9, div .flex-grid > .span-9, div .grid > .span-9 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex .span-10, .flex.span-all-10 > *, div .flex-grid .span-10, .flex-grid.span-all-10 > *, div .grid .span-10, .grid.span-all-10 > * {
    width: calc(83.3333333333% - 30px);
    width: calc(83.3333333333% - var(--grid-gap));
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
  }
  div .flex > .span-10, div .flex-grid > .span-10, div .grid > .span-10 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex .span-11, .flex.span-all-11 > *, div .flex-grid .span-11, .flex-grid.span-all-11 > *, div .grid .span-11, .grid.span-all-11 > * {
    width: calc(91.6666666667% - 30px);
    width: calc(91.6666666667% - var(--grid-gap));
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
  }
  div .flex > .span-11, div .flex-grid > .span-11, div .grid > .span-11 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex .span-12, .flex.span-all-12 > *, div .flex-grid .span-12, .flex-grid.span-all-12 > *, div .grid .span-12, .grid.span-all-12 > * {
    width: calc(100% - 30px);
    width: calc(100% - var(--grid-gap));
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
  }
  div .flex > .span-12, div .flex-grid > .span-12, div .grid > .span-12 {
    flex-grow: 0;
    flex-shrink: 0;
  }

  .grid {
    flex-wrap: wrap;
  }
  .grid > * {
    margin-bottom: 30px;
    margin-bottom: var(--grid-gap);
  }
}
@media screen and (-ms-high-contrast: active) and (max-width: 1200px), (-ms-high-contrast: none) and (max-width: 1200px) {
  div div .flex-grid > .container-span-1, div .flex-grid.container-span-all-1 > *, div div .flex > .container-span-1, div .flex.container-span-all-1 > *, div div .grid > .container-span-1, div .grid.container-span-all-1 > * {
    width: calc(8.3333333333% - 30px);
    width: calc(8.3333333333% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .container-span-2, div .flex-grid.container-span-all-2 > *, div div .flex > .container-span-2, div .flex.container-span-all-2 > *, div div .grid > .container-span-2, div .grid.container-span-all-2 > * {
    width: calc(16.6666666667% - 30px);
    width: calc(16.6666666667% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .container-span-3, div .flex-grid.container-span-all-3 > *, div div .flex > .container-span-3, div .flex.container-span-all-3 > *, div div .grid > .container-span-3, div .grid.container-span-all-3 > * {
    width: calc(25% - 30px);
    width: calc(25% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .container-span-4, div .flex-grid.container-span-all-4 > *, div div .flex > .container-span-4, div .flex.container-span-all-4 > *, div div .grid > .container-span-4, div .grid.container-span-all-4 > * {
    width: calc(33.3333333333% - 30px);
    width: calc(33.3333333333% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .container-span-5, div .flex-grid.container-span-all-5 > *, div div .flex > .container-span-5, div .flex.container-span-all-5 > *, div div .grid > .container-span-5, div .grid.container-span-all-5 > * {
    width: calc(41.6666666667% - 30px);
    width: calc(41.6666666667% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .container-span-6, div .flex-grid.container-span-all-6 > *, div div .flex > .container-span-6, div .flex.container-span-all-6 > *, div div .grid > .container-span-6, div .grid.container-span-all-6 > * {
    width: calc(50% - 30px);
    width: calc(50% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .container-span-7, div .flex-grid.container-span-all-7 > *, div div .flex > .container-span-7, div .flex.container-span-all-7 > *, div div .grid > .container-span-7, div .grid.container-span-all-7 > * {
    width: calc(58.3333333333% - 30px);
    width: calc(58.3333333333% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .container-span-8, div .flex-grid.container-span-all-8 > *, div div .flex > .container-span-8, div .flex.container-span-all-8 > *, div div .grid > .container-span-8, div .grid.container-span-all-8 > * {
    width: calc(66.6666666667% - 30px);
    width: calc(66.6666666667% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .container-span-9, div .flex-grid.container-span-all-9 > *, div div .flex > .container-span-9, div .flex.container-span-all-9 > *, div div .grid > .container-span-9, div .grid.container-span-all-9 > * {
    width: calc(75% - 30px);
    width: calc(75% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .container-span-10, div .flex-grid.container-span-all-10 > *, div div .flex > .container-span-10, div .flex.container-span-all-10 > *, div div .grid > .container-span-10, div .grid.container-span-all-10 > * {
    width: calc(83.3333333333% - 30px);
    width: calc(83.3333333333% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .container-span-11, div .flex-grid.container-span-all-11 > *, div div .flex > .container-span-11, div .flex.container-span-all-11 > *, div div .grid > .container-span-11, div .grid.container-span-all-11 > * {
    width: calc(91.6666666667% - 30px);
    width: calc(91.6666666667% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .container-span-12, div .flex-grid.container-span-all-12 > *, div div .flex > .container-span-12, div .flex.container-span-all-12 > *, div div .grid > .container-span-12, div .grid.container-span-all-12 > * {
    width: calc(100% - 30px);
    width: calc(100% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
}
@media screen and (-ms-high-contrast: active) and (max-width: 768px), (-ms-high-contrast: none) and (max-width: 768px) {
  div div .flex-grid > .medium-span-1, div .flex-grid.medium-span-all-1 > *, div div .flex > .medium-span-1, div .flex.medium-span-all-1 > *, div div .grid > .medium-span-1, div .grid.medium-span-all-1 > * {
    width: calc(8.3333333333% - 30px);
    width: calc(8.3333333333% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .medium-span-2, div .flex-grid.medium-span-all-2 > *, div div .flex > .medium-span-2, div .flex.medium-span-all-2 > *, div div .grid > .medium-span-2, div .grid.medium-span-all-2 > * {
    width: calc(16.6666666667% - 30px);
    width: calc(16.6666666667% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .medium-span-3, div .flex-grid.medium-span-all-3 > *, div div .flex > .medium-span-3, div .flex.medium-span-all-3 > *, div div .grid > .medium-span-3, div .grid.medium-span-all-3 > * {
    width: calc(25% - 30px);
    width: calc(25% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .medium-span-4, div .flex-grid.medium-span-all-4 > *, div div .flex > .medium-span-4, div .flex.medium-span-all-4 > *, div div .grid > .medium-span-4, div .grid.medium-span-all-4 > * {
    width: calc(33.3333333333% - 30px);
    width: calc(33.3333333333% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .medium-span-5, div .flex-grid.medium-span-all-5 > *, div div .flex > .medium-span-5, div .flex.medium-span-all-5 > *, div div .grid > .medium-span-5, div .grid.medium-span-all-5 > * {
    width: calc(41.6666666667% - 30px);
    width: calc(41.6666666667% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .medium-span-6, div .flex-grid.medium-span-all-6 > *, div div .flex > .medium-span-6, div .flex.medium-span-all-6 > *, div div .grid > .medium-span-6, div .grid.medium-span-all-6 > * {
    width: calc(50% - 30px);
    width: calc(50% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .medium-span-7, div .flex-grid.medium-span-all-7 > *, div div .flex > .medium-span-7, div .flex.medium-span-all-7 > *, div div .grid > .medium-span-7, div .grid.medium-span-all-7 > * {
    width: calc(58.3333333333% - 30px);
    width: calc(58.3333333333% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .medium-span-8, div .flex-grid.medium-span-all-8 > *, div div .flex > .medium-span-8, div .flex.medium-span-all-8 > *, div div .grid > .medium-span-8, div .grid.medium-span-all-8 > * {
    width: calc(66.6666666667% - 30px);
    width: calc(66.6666666667% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .medium-span-9, div .flex-grid.medium-span-all-9 > *, div div .flex > .medium-span-9, div .flex.medium-span-all-9 > *, div div .grid > .medium-span-9, div .grid.medium-span-all-9 > * {
    width: calc(75% - 30px);
    width: calc(75% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .medium-span-10, div .flex-grid.medium-span-all-10 > *, div div .flex > .medium-span-10, div .flex.medium-span-all-10 > *, div div .grid > .medium-span-10, div .grid.medium-span-all-10 > * {
    width: calc(83.3333333333% - 30px);
    width: calc(83.3333333333% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .medium-span-11, div .flex-grid.medium-span-all-11 > *, div div .flex > .medium-span-11, div .flex.medium-span-all-11 > *, div div .grid > .medium-span-11, div .grid.medium-span-all-11 > * {
    width: calc(91.6666666667% - 30px);
    width: calc(91.6666666667% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .medium-span-12, div .flex-grid.medium-span-all-12 > *, div div .flex > .medium-span-12, div .flex.medium-span-all-12 > *, div div .grid > .medium-span-12, div .grid.medium-span-all-12 > * {
    width: calc(100% - 30px);
    width: calc(100% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
}
@media screen and (-ms-high-contrast: active) and (max-width: 576px), (-ms-high-contrast: none) and (max-width: 576px) {
  div .flex-grid, div .flex, div .grid {
    flex-wrap: wrap;
  }
  div.site div .flex-grid > *, div.site div .flex > *, div.site div .grid > * {
    width: calc(100% - 30px);
    width: calc(100% - var(--grid-gap));
  }
  div div .flex-grid > .small-span-1, div div .flex-grid.small-span-all-1 > *, div div .flex > .small-span-1, div div .flex.small-span-all-1 > *, div div .grid > .small-span-1, div div .grid.small-span-all-1 > * {
    width: calc(8.3333333333% - 30px);
    width: calc(8.3333333333% - var(--grid-gap));
  }
  div div .flex-grid > .small-span-1, div div .flex > .small-span-1, div div .grid > .small-span-1 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .small-span-2, div div .flex-grid.small-span-all-2 > *, div div .flex > .small-span-2, div div .flex.small-span-all-2 > *, div div .grid > .small-span-2, div div .grid.small-span-all-2 > * {
    width: calc(16.6666666667% - 30px);
    width: calc(16.6666666667% - var(--grid-gap));
  }
  div div .flex-grid > .small-span-2, div div .flex > .small-span-2, div div .grid > .small-span-2 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .small-span-3, div div .flex-grid.small-span-all-3 > *, div div .flex > .small-span-3, div div .flex.small-span-all-3 > *, div div .grid > .small-span-3, div div .grid.small-span-all-3 > * {
    width: calc(25% - 30px);
    width: calc(25% - var(--grid-gap));
  }
  div div .flex-grid > .small-span-3, div div .flex > .small-span-3, div div .grid > .small-span-3 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .small-span-4, div div .flex-grid.small-span-all-4 > *, div div .flex > .small-span-4, div div .flex.small-span-all-4 > *, div div .grid > .small-span-4, div div .grid.small-span-all-4 > * {
    width: calc(33.3333333333% - 30px);
    width: calc(33.3333333333% - var(--grid-gap));
  }
  div div .flex-grid > .small-span-4, div div .flex > .small-span-4, div div .grid > .small-span-4 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .small-span-5, div div .flex-grid.small-span-all-5 > *, div div .flex > .small-span-5, div div .flex.small-span-all-5 > *, div div .grid > .small-span-5, div div .grid.small-span-all-5 > * {
    width: calc(41.6666666667% - 30px);
    width: calc(41.6666666667% - var(--grid-gap));
  }
  div div .flex-grid > .small-span-5, div div .flex > .small-span-5, div div .grid > .small-span-5 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .small-span-6, div div .flex-grid.small-span-all-6 > *, div div .flex > .small-span-6, div div .flex.small-span-all-6 > *, div div .grid > .small-span-6, div div .grid.small-span-all-6 > * {
    width: calc(50% - 30px);
    width: calc(50% - var(--grid-gap));
  }
  div div .flex-grid > .small-span-6, div div .flex > .small-span-6, div div .grid > .small-span-6 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .small-span-7, div div .flex-grid.small-span-all-7 > *, div div .flex > .small-span-7, div div .flex.small-span-all-7 > *, div div .grid > .small-span-7, div div .grid.small-span-all-7 > * {
    width: calc(58.3333333333% - 30px);
    width: calc(58.3333333333% - var(--grid-gap));
  }
  div div .flex-grid > .small-span-7, div div .flex > .small-span-7, div div .grid > .small-span-7 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .small-span-8, div div .flex-grid.small-span-all-8 > *, div div .flex > .small-span-8, div div .flex.small-span-all-8 > *, div div .grid > .small-span-8, div div .grid.small-span-all-8 > * {
    width: calc(66.6666666667% - 30px);
    width: calc(66.6666666667% - var(--grid-gap));
  }
  div div .flex-grid > .small-span-8, div div .flex > .small-span-8, div div .grid > .small-span-8 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .small-span-9, div div .flex-grid.small-span-all-9 > *, div div .flex > .small-span-9, div div .flex.small-span-all-9 > *, div div .grid > .small-span-9, div div .grid.small-span-all-9 > * {
    width: calc(75% - 30px);
    width: calc(75% - var(--grid-gap));
  }
  div div .flex-grid > .small-span-9, div div .flex > .small-span-9, div div .grid > .small-span-9 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .small-span-10, div div .flex-grid.small-span-all-10 > *, div div .flex > .small-span-10, div div .flex.small-span-all-10 > *, div div .grid > .small-span-10, div div .grid.small-span-all-10 > * {
    width: calc(83.3333333333% - 30px);
    width: calc(83.3333333333% - var(--grid-gap));
  }
  div div .flex-grid > .small-span-10, div div .flex > .small-span-10, div div .grid > .small-span-10 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .small-span-11, div div .flex-grid.small-span-all-11 > *, div div .flex > .small-span-11, div div .flex.small-span-all-11 > *, div div .grid > .small-span-11, div div .grid.small-span-all-11 > * {
    width: calc(91.6666666667% - 30px);
    width: calc(91.6666666667% - var(--grid-gap));
  }
  div div .flex-grid > .small-span-11, div div .flex > .small-span-11, div div .grid > .small-span-11 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .small-span-12, div div .flex-grid.small-span-all-12 > *, div div .flex > .small-span-12, div div .flex.small-span-all-12 > *, div div .grid > .small-span-12, div div .grid.small-span-all-12 > * {
    width: calc(100% - 30px);
    width: calc(100% - var(--grid-gap));
  }
  div div .flex-grid > .small-span-12, div div .flex > .small-span-12, div div .grid > .small-span-12 {
    flex-grow: 0;
    flex-shrink: 0;
  }
}
@media screen and (-ms-high-contrast: active) and (max-width: 1030px), (-ms-high-contrast: none) and (max-width: 1030px) {
  div div .flex-grid > .large-span-1, div .flex-grid.large-span-all-1 > *, div div .flex > .large-span-1, div .flex.large-span-all-1 > *, div div .grid > .large-span-1, div .grid.large-span-all-1 > * {
    width: calc(8.3333333333% - 30px);
    width: calc(8.3333333333% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .large-span-2, div .flex-grid.large-span-all-2 > *, div div .flex > .large-span-2, div .flex.large-span-all-2 > *, div div .grid > .large-span-2, div .grid.large-span-all-2 > * {
    width: calc(16.6666666667% - 30px);
    width: calc(16.6666666667% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .large-span-3, div .flex-grid.large-span-all-3 > *, div div .flex > .large-span-3, div .flex.large-span-all-3 > *, div div .grid > .large-span-3, div .grid.large-span-all-3 > * {
    width: calc(25% - 30px);
    width: calc(25% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .large-span-4, div .flex-grid.large-span-all-4 > *, div div .flex > .large-span-4, div .flex.large-span-all-4 > *, div div .grid > .large-span-4, div .grid.large-span-all-4 > * {
    width: calc(33.3333333333% - 30px);
    width: calc(33.3333333333% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .large-span-5, div .flex-grid.large-span-all-5 > *, div div .flex > .large-span-5, div .flex.large-span-all-5 > *, div div .grid > .large-span-5, div .grid.large-span-all-5 > * {
    width: calc(41.6666666667% - 30px);
    width: calc(41.6666666667% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .large-span-6, div .flex-grid.large-span-all-6 > *, div div .flex > .large-span-6, div .flex.large-span-all-6 > *, div div .grid > .large-span-6, div .grid.large-span-all-6 > * {
    width: calc(50% - 30px);
    width: calc(50% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .large-span-7, div .flex-grid.large-span-all-7 > *, div div .flex > .large-span-7, div .flex.large-span-all-7 > *, div div .grid > .large-span-7, div .grid.large-span-all-7 > * {
    width: calc(58.3333333333% - 30px);
    width: calc(58.3333333333% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .large-span-8, div .flex-grid.large-span-all-8 > *, div div .flex > .large-span-8, div .flex.large-span-all-8 > *, div div .grid > .large-span-8, div .grid.large-span-all-8 > * {
    width: calc(66.6666666667% - 30px);
    width: calc(66.6666666667% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .large-span-9, div .flex-grid.large-span-all-9 > *, div div .flex > .large-span-9, div .flex.large-span-all-9 > *, div div .grid > .large-span-9, div .grid.large-span-all-9 > * {
    width: calc(75% - 30px);
    width: calc(75% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .large-span-10, div .flex-grid.large-span-all-10 > *, div div .flex > .large-span-10, div .flex.large-span-all-10 > *, div div .grid > .large-span-10, div .grid.large-span-all-10 > * {
    width: calc(83.3333333333% - 30px);
    width: calc(83.3333333333% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .large-span-11, div .flex-grid.large-span-all-11 > *, div div .flex > .large-span-11, div .flex.large-span-all-11 > *, div div .grid > .large-span-11, div .grid.large-span-all-11 > * {
    width: calc(91.6666666667% - 30px);
    width: calc(91.6666666667% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
  div div .flex-grid > .large-span-12, div .flex-grid.large-span-all-12 > *, div div .flex > .large-span-12, div .flex.large-span-all-12 > *, div div .grid > .large-span-12, div .grid.large-span-all-12 > * {
    width: calc(100% - 30px);
    width: calc(100% - var(--grid-gap));
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 0;
  }
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .layout-center-content > * {
    margin: 0;
  }
}
/*--------------------------------------------------------------
# Adding the core styles necessary to run ignition
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Animation Setup
--------------------------------------------------------------*/
/*------- For animations --------*/
.animate {
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  transform: translate(0);
}

/*------- infinite animations --------*/
.infinite {
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}

/*--------------------------------------------------------------
# Scroll Animation with data-scrollanimation
--------------------------------------------------------------*/
/*------- when using data-scrollanimation with scrubbing, turn off transitions --------*/
#page [data-scrollscrub] {
  transition: none;
}

/*------- Special class for fixing at top. Used with scrollanimation --------*/
.fixed-at-top {
  position: fixed;
  top: 0;
}

/*------- Animate in a sequence --------*/
.active.sequence:nth-of-type(1) {
  transition-delay: 0s;
}

.active.sequence:nth-of-type(2) {
  transition-delay: 0.25s;
}

.active.sequence:nth-of-type(3) {
  transition-delay: 0.5s;
}

.active.sequence:nth-of-type(4) {
  transition-delay: 0.75s;
}

.active.sequence:nth-of-type(5) {
  transition-delay: 1s;
}

.active.sequence:nth-of-type(6) {
  transition-delay: 1.25s;
}

.active.sequence:nth-of-type(7) {
  transition-delay: 1.5s;
}

.active.sequence:nth-of-type(8) {
  transition-delay: 1.75s;
}

.active.sequence:nth-of-type(9) {
  transition-delay: 2s;
}

.active.sequence:nth-of-type(10) {
  transition-delay: 2.25s;
}

.active.sequence:nth-of-type(11) {
  transition-delay: 2.5s;
}

.active.sequence:nth-of-type(12) {
  transition-delay: 2.75s;
}

.active.sequence:nth-of-type(13) {
  transition-delay: 3s;
}

.active.sequence:nth-of-type(14) {
  transition-delay: 3.25s;
}

.active.sequence:nth-of-type(15) {
  transition-delay: 3.5s;
}

.active.sequence:nth-of-type(16) {
  transition-delay: 3.75s;
}

.active.sequence:nth-of-type(17) {
  transition-delay: 4s;
}

.active.sequence:nth-of-type(18) {
  transition-delay: 4.25s;
}

.active.sequence:nth-of-type(19) {
  transition-delay: 4.5s;
}

.active.sequence:nth-of-type(20) {
  transition-delay: 4.75s;
}

.active.sequence:nth-of-type(21) {
  transition-delay: 5s;
}

.active.sequence:nth-of-type(22) {
  transition-delay: 5.25s;
}

.active.sequence:nth-of-type(23) {
  transition-delay: 5.5s;
}

.active.sequence:nth-of-type(24) {
  transition-delay: 5.75s;
}

.active.sequence:nth-of-type(25) {
  transition-delay: 6s;
}

.active.sequence:nth-of-type(26) {
  transition-delay: 6.25s;
}

.active.sequence:nth-of-type(27) {
  transition-delay: 6.5s;
}

.active.sequence:nth-of-type(28) {
  transition-delay: 6.75s;
}

.active.sequence:nth-of-type(29) {
  transition-delay: 7s;
}

.active.sequence:nth-of-type(30) {
  transition-delay: 7.25s;
}

.active.sequence:nth-of-type(31) {
  transition-delay: 7.5s;
}

/*--------------------------------------------------------------
# Animations
--------------------------------------------------------------*/
.js [data-scrollanimation*=fadeInUp] {
  opacity: 0;
  transition: all 0.5s;
  transform: translate3d(0, 100%, 0);
}
.js [data-scrollanimation*=fadeInUp].fadeInUp {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.js [data-scrollanimation*=zoomIn] {
  transition: all 0.5s;
  opacity: 0;
  transform: scale3d(0.3, 0.3, 0.3);
}
.js [data-scrollanimation*=zoomIn].zoomIn {
  transform: scale(1);
  opacity: 1;
}

/*--------------------------------------------------------------
# Icons
--------------------------------------------------------------*/
.icon, #wpadminbar .icon {
  display: inline-block;
  stroke-width: 0;
  stroke: currentColor;
  height: 1em;
  vertical-align: middle;
  width: 1em;
  position: relative;
  fill: currentColor;
}
.icon svg, .icon path, .icon g, #wpadminbar .icon svg, #wpadminbar .icon path, #wpadminbar .icon g {
  fill: currentColor;
}

/*--------------------------------------------------------------
# Icon Tweaks
--------------------------------------------------------------*/
.icon-arrow-right {
  top: -2px;
}

/*--------------------------------------------------------------
Lists
--------------------------------------------------------------*/
ul,
ol {
  margin: 0 0 1.5em 30px;
  margin: 0 0 1.5em var(--gap);
  padding: 0;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: 700;
}

dd {
  margin: 0 1.5em 1.5em;
}

/*--------------------------------------------------------------
Tables
--------------------------------------------------------------*/
table {
  border-collapse: collapse;
  margin: 0 0 1.5em;
  width: 100%;
}

thead th {
  padding-bottom: 0.5em;
}

th {
  padding: 0.4em;
  text-align: left;
}

td {
  padding: 0.4em;
}

th:first-child,
td:first-child {
  padding-left: 0;
}

th:last-child,
td:last-child {
  padding-right: 0;
}

/*--------------------------------------------------------------
# Sections and Blocks and Parts
--------------------------------------------------------------*/
/*
  Most block and section styling can go here or in the block folder with the template-parts folder for that block. The choice is up to you.
 */
/*------- Section defaults --------*/
.no-bg + .no-bg {
  padding-top: 0;
}

section.heading-center h1, section.heading-center h2 {
  text-align: center;
}

/*------- Padding classes useful for sections --------*/
.site-content .padding {
  padding: 30px;
  padding: var(--gap);
}
.site-content .no-padding {
  padding: 0;
}
.site-content .no-padding-top {
  padding-top: 0;
}
.site-content .no-padding-bottom {
  padding-bottom: 0;
}
.site-content .margin-bottom {
  margin-bottom: 30px;
  margin-bottom: var(--gap);
}

/*------- Your block, parts,  and section styling --------*/
/*--------------------------------------------------------------
# Settings for some basic html elements
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
html {
  font-size: 62.5%;
}

body {
  font-size: 2rem;
  line-height: 1.4;
  line-height: var(--line-height);
  letter-spacing: normal;
  font-family: "ivypresto-display", serif;
  font-family: var(--font);
  color: #000000;
  color: var(--main-text-color);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
}
@media screen and (max-width: 1800px) {
  body {
    font-size: 1.5rem;
    font-size: clamp(1.5rem, 1.3vw, 2rem);
  }
}
@media (min-width: 1500px) {
  .grow-font {
    font-size: 1.7rem;
    font-size: var(--article-font-size);
  }
}
h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
  font-family: "ivypresto-display", serif;
  font-family: var(--font);
  font-weight: normal;
}
h1 strong,
h2 strong,
h3 strong,
h4 strong,
h5 strong,
h6 strong {
  font-weight: 500;
}

.font-medium {
  font-family: "Chivo Mono";
  font-weight: 500;
}

.font-alt {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-family: var(--font-alt);
}

p, .base-text {
  margin: 0 0 1em 0;
  font-weight: 400;
  font-size: inherit;
  line-height: 1.4;
  font-family: "Inter Tight", sans-serif;
  font-weight: 400;
  font-size: 1.8rem;
}

/*------- Quick text alignment classes --------*/
.text-center {
  text-align: center;
}

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

.text-left {
  text-align: left;
}

.text-justify {
  text-align: justify;
}

/*--------------------------------------------------------------
# Default Headings in articles. Front page and other special pages should override the more common setting
--------------------------------------------------------------*/
h1, .h1 {
  font-size: 8.6rem;
  max-width: 1400px;
  line-height: 1.2;
  font-weight: normal;
  margin: 0;
}
@media screen and (max-width: 1800px) {
  h1, .h1 {
    font-size: 5.8vw;
    font-size: clamp(3rem, 5vw, 8.6rem);
  }
}
@media screen and (max-width: 700px) {
  h1, .h1 {
    font-size: 3rem;
    font-size: clamp(3rem, 6vw, 9.2rem);
  }
}

h2, .h2, .sidebar-h2 {
  line-height: 1;
  margin-top: 0;
  font-size: clamp(2.8rem, 7.3vw, 6.4rem);
}
h2:first-child, .h2:first-child, .sidebar-h2:first-child {
  margin-top: 0;
}
h3, .h3, .article-body h2, .article-body h1 {
  font-size: 4rem;
  line-height: 1.2;
  margin: 0;
}
@media screen and (max-width: 900px) {
  h3, .h3, .article-body h2, .article-body h1 {
    font-size: 2.6rem;
    font-size: clamp(2.6rem, 3.2vw, 3.4rem);
  }
}

h4, .h4 {
  font-size: 2.8rem;
  line-height: 1.2;
  margin-top: 0;
}
@media screen and (max-width: 1700px) {
  h4, .h4 {
    font-size: 2.3vw;
    font-size: clamp(2rem, 2.3vw, 2.8rem);
  }
}
h5, .h5 {
  font-size: 1.8rem;
  line-height: 1.2;
  margin: 0;
}

h6, .h6 {
  font-size: 1.8rem;
  margin-top: 0;
  margin-bottom: 1.3em;
}
@media screen and (max-width: 1300px) {
  h6, .h6 {
    font-size: 1.5rem;
    margin-bottom: 1em;
  }
}
@media screen and (max-width: 700px) {
  h6, .h6 {
    font-size: 1.3rem;
    margin-bottom: 1em;
  }
}

h1, h2, .h2, h3, h4 {
  margin-bottom: 0.5em;
}

h1 {
  margin-bottom: 0.5em;
}

.article-body h1, .article-body h2, .article-body .h2, .article-body h3, .article-body h4 {
  margin-bottom: 0.75em;
}
.article-body h1 {
  margin-bottom: 0.5em;
}

p:not(strong), h3:not(strong), .block-core-list li {
  letter-spacing: normal;
}

h4 {
  font-weight: 500;
}

strong, .strong, b {
  font-weight: 500;
}

.single-post__content p:not(strong), .single-post__content h1:not(strong), .single-post__content h2:not(strong), .single-post__content h3:not(strong), .single-post__content h4:not(strong), .single-post__content .block-core-list li {
  letter-spacing: normal;
}
.single-post__content h3, .single-post__content .h3 {
  font-size: 4.8rem;
  line-height: 1.2;
  margin-top: 0;
}
@media screen and (max-width: 1700px) {
  .single-post__content h3, .single-post__content .h3 {
    font-size: 4.44vw;
    font-size: clamp(2.8rem, 3.4vw, 4.8rem);
  }
}
.single-post__content h4, .single-post__content .h4 {
  font-size: 2.8rem;
  line-height: 1.2;
}
@media screen and (max-width: 1700px) {
  .single-post__content h4, .single-post__content .h4 {
    font-size: 1.7vw;
    font-size: clamp(2rem, 1.6vw, 2.8rem);
  }
}
.f--semibold {
  font-family: "Inter Tight", sans-serif;
  font-weight: 600;
}

.f--medium {
  font-family: "Inter Tight", sans-serif;
  font-weight: 500;
}

.f--inter {
  font-family: "Inter", sans-serif;
  font-weight: 600;
  letter-spacing: normal;
}

.heading-label {
  font-size: 2.6rem;
  margin-bottom: 30px;
  font-weight: 800;
}
@media screen and (max-width: 700px) {
  .heading-label {
    font-size: 2rem;
    margin-bottom: 16px;
  }
}

.txt-mono {
  font-weight: 500;
}

/*--------------------------------------------------------------
# Basic Links
--------------------------------------------------------------*/
a {
  color: #000000;
  color: var(--black);
  text-decoration: none;
  cursor: pointer;
}

h1 a, h2 a {
  color: inherit;
}

/*--------------------------------------------------------------
# Selection Highlighting
--------------------------------------------------------------*/
::-moz-selection {
  background: #007eac;
  background: var(--highlight);
  color: white;
}
::selection {
  background: #007eac;
  background: var(--highlight);
  color: white;
}

/*--------------------------------------------------------------
# quotes
--------------------------------------------------------------*/
em {
  text-transform: none;
  text-transform: initial;
}

.article-body p em {
  font-size: 1.2em;
}

blockquote {
  margin: 3em 0;
}
@media screen and (max-width: 700px) {
  blockquote {
    margin: 2em 0;
  }
}
blockquote p {
  padding-left: 40px;
}
blockquote p:last-of-type {
  margin: 0;
}
/*--------------------------------------------------------------
# Post Meta defaults
--------------------------------------------------------------*/
time, time a, .card-meta {
  font-size: 1.3rem;
}

/*--------------------------------------------------------------
# WP Edit Post Link
--------------------------------------------------------------*/
.edit-link {
  font-size: 1.4rem;
}

/*--------------------------------------------------------------
# Code
--------------------------------------------------------------*/
pre {
  background: #f7f9fa;
  border: 1px solid #e6e8eb;
  font-family: "Source Code Pro", monospace;
  font-family: var(--font-pre);
  font-size: 14px;
  line-height: 22px;
  line-height: var(--line-height-pre);
  margin-top: 20px;
  margin-bottom: 20px;
  overflow: auto;
  padding: 20px;
  white-space: pre-wrap;
}

code,
kbd,
tt,
var {
  font-family: "Source Code Pro", monospace;
  font-family: var(--font-pre);
  font-size: 15px;
}

.tag {
  font-size: 1.4rem;
  color: black;
  padding: 6px 18px;
  font-weight: 800;
  letter-spacing: normal;
  position: relative;
}
@media screen and (max-width: 600px) {
  .tag {
    font-size: 1.1rem;
  }
}

.tag:after {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background: black;
  z-index: -1;
  opacity: 0.15;
}

.capsule-wrap {
  margin-top: 32px;
}
@media screen and (max-width: 1100px) {
  .capsule-wrap {
    margin-top: 32px;
  }
}
@media screen and (max-width: 750px) {
  .capsule-wrap {
    margin-top: 22px;
  }
}

.basic-card__inner .capsule-wrap {
  margin-top: 20px;
}

.color-black {
  color: black !important;
}

.btn--basic {
  cursor: pointer;
  -webkit-appearance: none;
  border-radius: 999px;
  text-decoration: none;
  border: none;
  padding: 16px 22px;
  color: black;
  letter-spacing: normal;
  transition: opacity 0.3s;
  text-align: center;
  background: #FFA700;
}

.btn--basic--large {
  padding: 20px 40px;
}
@media screen and (max-width: 1100px) {
  .btn--basic--large {
    padding: 16px 30px;
  }
}
@media screen and (max-width: 1100px) {
  .btn--basic--large {
    padding: 16px 26px;
  }
}

.btn--dark {
  background: black;
  color: white;
}

.btn--filter {
  color: #6d0bff;
  position: relative;
  background: rgba(255,255,255,0);
  cursor: pointer;
  -webkit-appearance: none;
  color: black;
  text-decoration: none;
  font-weight: 500;
  border: none;
  padding: 12px 22px;
  min-width: auto;
  border-radius: 4px;
  transition: opacity 0.3s;
  font-size: 1.6rem;
  box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.1);
  box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
  box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 1px 3px 1px;
  box-shadow: rgba(0, 0, 0, 0.02) 0px 1px 3px 0px, rgba(27, 31, 35, 0.15) 0px 0px 0px 1px;
  text-align: center;
  font-size: 1.5rem;
}

@media screen and (max-width: 1400px) {
  .btn--filter, .pjax-navigation__inner .btn--basic {
    padding: 10px 20px;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 1200px) {
  .btn--filter, .pjax-navigation__inner .btn--basic {
    padding: 10px 20px;
    font-size: 1.3rem;
  }
}
.btn--filter span {
  display: none;
}

.btn--filter:after {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background: rgba(109,11,255,0.72941);
  z-index: -1;
  opacity: 0;
  border-radius: 4px;
}

.btn--filter:hover {
  color: black;
  box-shadow: none;
}

.btn--filter:hover:after {
  opacity: 0.1;
}

.btn--filter.S-active:after {
  opacity: 0.2;
}

.btn--filter.S-active {
  color: black;
  box-shadow: none;
}

.btn--basic {
  transition: 0.3s;
}

.btn--outline {
  border: solid 1px;
  box-shadow: none;
  background: none;
}

.workshop-nav .btn--outline {
  background: white;
}

.btn--basic--small {
  padding: 8px 16px;
  min-width: 112px;
  font-size: 1.6rem;
}

.btn--dark {
  background: black;
  color: white;
  box-shadow: none;
}

.btn--yellow {
  background: #ffff22;
  border-color: #ffff22;
  color: #000000;
}

.btn--white {
  background: rgba(255,255,255,1);
  border-color: #000000;
  color: #000000;
}

.btn--bordered {
  background: transparent;
}

.btn--black {
  background: black;
  color: #ffff22;
}

.btn--black svg {
  fill: #ffff22;
}

.btn--small {
  font-size: 1.3rem;
  padding: 6px 10px;
}

.btn--wide {
  font-size: 2rem;
}
.btn--wide .basic-btn__icon {
  width: 1.8rem;
  height: 1.8rem;
}

.tag-capsule {
  font-size: 1.6rem;
  padding: 12px;
  border: solid 1px;
  text-align: center;
}

.star-li {
  display: flex;
}
.star-li p {
  font-size: 1.5rem;
  line-height: 1.2;
  margin-left: 24px;
  margin-bottom: 14px;
}

.star-li--large p {
  font-size: 2.2rem;
}

.star-symbol {
  position: relative;
  margin: 0 !important;
}
.star-symbol .star-symbol__inner {
  position: absolute;
  top: 2px;
  left: 0;
  width: 14px;
  height: 14px;
  background-image: url("data:image/svg+xml,%3Csvg id='uuid-5f85ee02-c770-4200-bc08-784924f57f91' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 15'%3E%3Cpath d='M6.86,9.11l-2.37-2.74c-.06-.07-.15-.11-.24-.11H.82c-.27,0-.41,.32-.23,.52l7.01,7.61c.24,.26,.67,.14,.74-.21,.43-2.1,2.09-7.72,8.04-13.08,.13-.12,.16-.32,.07-.47h0c-.1-.17-.32-.24-.5-.14-1.36,.72-6.66,3.75-9.09,8.61Z' style='fill:%2327c94c;'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
}

.site-content .block-core-list ul {
  list-style: disc outside none;
  list-style: initial;
  margin-left: 0;
}
.site-content .block-core-list li {
  position: relative;
  margin-left: 20px;
  margin-bottom: 14px;
}
.site-content .block-core-list li:before {
  display: none;
  content: "";
  position: relative;
  position: absolute;
  top: 8px;
  left: -20px;
  width: 14px;
  height: 14px;
  background-image: url("data:image/svg+xml,%3Csvg id='uuid-5f85ee02-c770-4200-bc08-784924f57f91' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 15'%3E%3Cpath d='M6.86,9.11l-2.37-2.74c-.06-.07-.15-.11-.24-.11H.82c-.27,0-.41,.32-.23,.52l7.01,7.61c.24,.26,.67,.14,.74-.21,.43-2.1,2.09-7.72,8.04-13.08,.13-.12,.16-.32,.07-.47h0c-.1-.17-.32-.24-.5-.14-1.36,.72-6.66,3.75-9.09,8.61Z' style='fill:%2327c94c;'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
}

.large-icons .star-li {
  display: flex;
}
.large-icons .star-li p {
  font-size: 2rem;
  line-height: 1.2;
  margin-left: 24px;
  margin-bottom: 2rem;
}
.large-icons .star-symbol {
  position: relative;
  margin: 0 !important;
}
.large-icons .star-symbol .star-symbol__inner {
  position: absolute;
  top: 5px;
  left: 0;
  width: 14px;
  height: 14px;
  background-image: url("data:image/svg+xml,%3Csvg id='uuid-7c27314f-7cb5-447f-a3c9-03785896e97a' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14.4 14.38'%3E%3Cg id='uuid-46a04dc1-acaa-46be-a5f0-e1afe642d23c'%3E%3Cpath d='M6.79 14.38c0-3.75-3.04-6.79-6.79-6.79v-.8C3.75 6.79 6.79 3.75 6.79 0h.82c0 3.75 3.04 6.79 6.79 6.79v.8c-3.75 0-6.79 3.04-6.79 6.79h-.82Z' style='fill:%2361cdef%3B'/%3E%3C/g%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
}

.S-detected--tab a.focus-visible {
  outline: -webkit-focus-ring-color auto 1px;
  outline-offset: 4px;
  transition: box-shadow 0.2s ease 0s !important;
  box-shadow: rgba(255, 255, 255, 0.8) 0px 0px 0px 2px, #11a9ee 0px 0px 0px 4px !important;
}

.S-detected--tab a:focus-visible {
  outline: -webkit-focus-ring-color auto 1px;
  outline-offset: 4px;
  transition: box-shadow 0.2s ease 0s !important;
  box-shadow: rgba(255, 255, 255, 0.8) 0px 0px 0px 2px, #11a9ee 0px 0px 0px 4px !important;
}
.S-detected--tab button.focus-visible {
  outline: -webkit-focus-ring-color auto 1px;
  outline-offset: 4px;
  transition: box-shadow 0.2s ease 0s !important;
  box-shadow: rgba(255, 255, 255, 0.8) 0px 0px 0px 2px, #11a9ee 0px 0px 0px 4px !important;
}
.S-detected--tab button:focus-visible {
  outline: -webkit-focus-ring-color auto 1px;
  outline-offset: 4px;
  transition: box-shadow 0.2s ease 0s !important;
  box-shadow: rgba(255, 255, 255, 0.8) 0px 0px 0px 2px, #11a9ee 0px 0px 0px 4px !important;
}

/*--------------------------------------------------------------
# Special Images
--------------------------------------------------------------*/
/*
    - Use a background-image div for holding a foreground image behind an item or header
    - use cover-image for an image in the foreground of a header.
*/
.background-image {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  display: block;
}
.background-image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
  position: relative;
}
.background-image ~ * {
  z-index: 10;
}

.cover-image {
  width: 100%;
  display: block;
}
.cover-image img {
  -o-object-fit: cover;
     object-fit: cover;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
}

/*------- Add overlay to a div so image is shaded --------*/
.overlay {
  box-shadow: inset 0 0 0 2000px rgba(0, 0, 0,0.65);
  box-shadow: inset 0 0 0 2000px var(--overlay-color);
  color: white;
}

/*--------------------------------------------------------------
# Article images
--------------------------------------------------------------*/
article img, .wp-block-image img {
  display: block;
}

figure {
  margin-bottom: 1em;
  max-width: 100%;
  font-size: 1.3rem;
}

.card-grid figure, .card-grid-full figure {
  text-align: center;
  margin: 0;
}

/*--------------------------------------------------------------
# Image Alignments / WordPress Alignments
--------------------------------------------------------------*/
img.alignright {
  float: right;
  margin-left: 30px;
  margin-left: var(--gap);
  margin-bottom: 1em;
}

img.alignleft {
  float: left;
  margin-right: 30px;
  margin-right: var(--gap);
  margin-bottom: 1em;
}

.wp-block-image .alignright {
  margin-top: 0.6em;
  float: right;
  margin-left: 30px;
  margin-left: var(--gap);
}

.wp-block-image .alignleft {
  margin-top: 0.6em;
  float: left;
  margin-right: 30px;
  margin-right: var(--gap);
}

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

.container-content .alignfull {
  max-width: none;
}

.alignfull img {
  -o-object-fit: cover;
     object-fit: cover;
}

/*--------------------------------------------------------------
# Videos
--------------------------------------------------------------*/
.videowrapper {
  float: none;
  clear: both;
  width: 100%;
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 0;
  height: 0;
}

.videowrapper iframe, .videowrapper video, .videowrapper object {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*--------------------------------------------------------------
# Body Background
--------------------------------------------------------------*/
body {
  background: white;
}

@media only screen and (max-width: 1200px) {
  #page {
    overflow: hidden;
  }
}

.site-container {
  background: none;
  display: block;
}

/*--------------------------------------------------------------
# Logo
--------------------------------------------------------------*/
.site-logo {
  font-size: 3.3rem;
  text-transform: uppercase;
  color: white;
  max-width: 350px;
}
.site-logo svg, .site-logo path, .site-logo g {
  fill: currentColor;
}

.site-navigation .site-logo {
  padding: 3px 0;
}

/*--------------------------------------------------------------
# Site Top - holds logo and main menu at top
--------------------------------------------------------------*/
.site-top {
  position: relative;
  background: #007fb0;
  background: var(--site-top);
}

/*--------------------------------------------------------------
# Default Headers
--------------------------------------------------------------*/
.entry-header, .page-header {
  position: relative;
  min-height: calc(400px + 5vw);
  padding: 30px 0;
  color: white;
  background-color: #4c545d;
  background-color: var(--dark-grey);
  background-size: cover;
}
.entry-header h1, .page-header h1 {
  margin: 0;
}
.entry-header .cover-image, .page-header .cover-image {
  height: 500px;
}

/*--------------------------------------------------------------
# Under header first thing should probably have padding-top. Usually its a section
# expect it to be a paragraph or a heading or a section
# Sometimes header is outside entry-content so we select the very first thing inside there
--------------------------------------------------------------*/
.entry-header + p, .entry-content > p:first-child {
  padding-top: 30px;
  padding-top: var(--gap);
}

/*--------------------------------------------------------------
# Default Footer
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Error 404 Page
--------------------------------------------------------------*/
.bg--dark {
  background: #031600;
}
.bg--dark h2 {
  color: #FFA700;
}
.bg--dark p {
  color: white;
}

.U_container {
  position: relative;
  width: 100%;
  max-width: 2000px;
  margin-left: auto;
  margin-right: auto;
}

.U_container--article {
  max-width: 1000px;
}

.U_base-pad {
  padding-left: 16px;
  padding-right: 16px;
}
@media only screen and (min-width: 500px) {
  .U_base-pad {
    padding-left: 16px;
    padding-right: 16px;
  }
}
@media only screen and (min-width: 700px) {
  .U_base-pad {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (min-width: 1100px) {
  .U_base-pad {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (min-width: 1400px) {
  .U_base-pad {
    padding-left: 100px;
    padding-right: 100px;
    padding-left: 4vw;
    padding-right: 4vw;
  }
}

.U_base-pad--right-only {
  padding-right: 16px;
}
@media only screen and (min-width: 700px) {
  .U_base-pad--right-only {
    padding-right: 40px;
  }
}

.U_base-pad--left-only {
  padding-left: 16px;
}
@media only screen and (min-width: 700px) {
  .U_base-pad--left-only {
    padding-left: 40px;
  }
}

.U-inner-content--x, .-x-pad, .wp-block-group {
  padding-left: 80px;
  padding-right: 80px;
}
@media only screen and (max-width: 1600px) {
  .U-inner-content--x, .-x-pad, .wp-block-group {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media only screen and (max-width: 1200px) {
  .U-inner-content--x, .-x-pad, .wp-block-group {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (max-width: 699.89px) {
  .U-inner-content--x, .-x-pad, .wp-block-group {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (max-width: 499.89px) {
  .U-inner-content--x, .-x-pad, .wp-block-group {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.full-content .U-inner-content--x, .full-content .-x-pad, .full-content .wp-block-group {
  padding-left: 0;
  padding-right: 0;
}

.U-inner-content--y, .-y-pad, .content-spacer--tall, .content-spacer--normal {
  padding-top: 160px;
  padding-bottom: 160px;
  padding-top: 6vw;
  padding-bottom: 6vw;
}
@media only screen and (max-width: 1400px) {
  .U-inner-content--y, .-y-pad, .content-spacer--tall, .content-spacer--normal {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media only screen and (max-width: 1200px) {
  .U-inner-content--y, .-y-pad, .content-spacer--tall, .content-spacer--normal {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.U-inner-content--y--small, .-y-pad--small, .basic-content--bottom, .basic-content--middle, .basic-content--top, .split-content-spacer--small, .content-spacer--small {
  padding-top: 40px;
  padding-bottom: 40px;
}

.content-spacer {
  position: relative;
  display: flex;
}
.content-spacer--small {
  padding-bottom: 0;
}
@media only screen and (max-width: 700px) {
  .content-spacer--small {
    padding-top: 20px;
  }
}
.content-spacer--normal {
  padding-bottom: 0;
}
@media only screen and (max-width: 700px) {
  .content-spacer--normal {
    padding-top: 40px;
  }
}
.-no-top-pad {
  padding-top: 0 !important;
}

.U-sec-pad {
  margin-top: 100px;
}
@media only screen and (max-width: 1200px) {
  .U-sec-pad {
    margin-top: 100px;
  }
}
@media only screen and (max-width: 700px) {
  .U-sec-pad {
    margin-top: 60px;
  }
}

.U-sec-pad--small {
  margin-top: 40px;
}
@media only screen and (max-width: 1200px) {
  .U-sec-pad--small {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 700px) {
  .U-sec-pad--small {
    margin-top: 20px;
  }
}

.-mute-top-pad {
  margin-top: 0 !important;
}

.U_padded-container {
  padding-top: 3vw;
  padding-bottom: 3vw;
}
@media only screen and (max-width: 1200px) {
  .U_padded-container {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}
@media only screen and (max-width: 1100px) {
  .U_padded-container {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (max-width: 700px) {
  .U_padded-container {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}

.section-theme--dark {
  background: #1A1A1A;
  color: white;
}
.section-theme--dark a {
  color: white;
}
.image-aspect-box {
  height: 0;
  overflow: hidden;
  position: relative;
}

.image-aspect-box_inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.image-aspect-box_inner img {
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.basic-content--top {
  padding-top: 0;
}

.basic-content--bottom {
  padding-bottom: 0;
}

.basic-content-flx {
  display: flex;
}
.basic-content-flx .basic-content__inner {
  max-width: 800px;
  width: 100%;
}
.basic-content-flx--center {
  justify-content: center;
}

.basic-content-flx--right {
  justify-content: flex-end;
}

.basic-content-flx--full {
  display: flex;
}
.basic-content-flx--full .basic-content__inner {
  width: 100%;
  max-width: 100%;
}

.-home-first-txt {
  padding-right: 60px;
}
@media only screen and (max-width: 1120px) {
  .-home-first-txt {
    padding-right: 40px;
  }
}
@media only screen and (max-width: 880px) {
  .-home-first-txt {
    padding-right: 20px;
  }
}
@media only screen and (max-width: 800px) {
  .-home-first-txt {
    padding-right: 0;
  }
}

.heading-content .ingr {
  max-width: 800px;
}
@media only screen and (max-width: 1200px) {
  .heading-content .ingr {
    max-width: 60%;
  }
}
@media only screen and (max-width: 1000px) {
  .heading-content .ingr {
    max-width: 560px;
  }
}

.heading h2 {
  margin-right: 25%;
}
@media only screen and (max-width: 750px) {
  .heading h2 {
    margin-right: 0;
  }
}

.heading-p {
  margin-top: 30px;
  max-width: 66.666%;
}

.-sticky-label {
  position: sticky;
  top: 0px;
}

.resize-animation-stopper * {
  transition: none !important;
  transition-delay: none !important;
}

/*--------------------------------------------------------------
# MODULES --- just add the stuff here and split to GLOBAL folder ***

Moved: _kohteet
--------------------------------------------------------------*/
.section--full-header {
  position: relative;
  height: 600px;
  background: #fff;
  display: flex;
  align-items: center;
  max-height: 100vw;
  background-size: cover;
  overflow: hidden;
}
@media screen and (max-width: 1100px) {
  .section--full-header {
    height: 560px;
  }
}
.section--full-header .module--heading_txt {
  margin: 0;
}
.section--full-header h1 {
  color: white;
  line-height: 1;
  max-width: 70%;
  margin: 0;
}
@media screen and (max-width: 700px) {
  .section--full-header h1 {
    max-width: 100%;
  }
}

.module--bg-img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.module--bg-img img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
}

.large-p-wrapper {
  width: 100%;
  width: 880px;
  max-width: 75%;
  margin-top: 40px;
  font-size: 2.2rem;
}
@media screen and (max-width: 1000px) {
  .large-p-wrapper {
    font-size: 2rem;
    margin-top: 30px;
    width: 100%;
  }
}
@media screen and (max-width: 800px) {
  .large-p-wrapper {
    font-size: 1.8rem;
    margin-top: 30px;
    width: 100%;
    padding-right: 40px;
  }
}
@media screen and (max-width: 700px) {
  .large-p-wrapper {
    font-size: 1.5rem;
    margin-top: 20px;
    width: 100%;
    padding-right: 0;
  }
}

.module--heading_txt {
  margin-bottom: 60px;
}
@media screen and (max-width: 700px) {
  .module--heading_txt {
    margin-bottom: 40px;
  }
}

.floating-heading {
  padding-top: 20px;
  padding-left: 8.33333%;
  margin-bottom: -60px;
}
.floating-heading h3 {
  margin-bottom: 0;
}
.floating-heading .heading {
  max-width: 80%;
}
@media screen and (max-width: 1200px) {
  .floating-heading {
    margin-bottom: -20px;
  }
}
@media screen and (max-width: 1000px) {
  .floating-heading {
    padding-left: 40px;
  }
  .floating-heading .heading {
    max-width: 80%;
  }
}
@media screen and (max-width: 900px) {
  .floating-heading {
    padding-left: 40px;
  }
}
@media screen and (max-width: 700px) {
  .floating-heading {
    margin-bottom: -20px;
    padding-left: 30px;
    padding-right: 50px;
  }
  .floating-heading .heading {
    max-width: 100%;
  }
}
@media screen and (max-width: 570px) {
  .floating-heading {
    margin-bottom: 0;
    padding-left: 20px;
    padding-right: 30px;
  }
  .floating-heading .heading {
    max-width: 100%;
  }
}

.-home-yritys-floating-heading {
  margin: 100px 0;
}
@media screen and (max-width: 1200px) {
  .-home-yritys-floating-heading {
    margin: 80px 0;
  }
}

.floating-heading--pre-table {
  padding-bottom: 20px;
}

@media screen and (min-width: 1000.11px) {
  .module--floating-manifest.-left-nudge {
    margin-left: 16.6666666667%;
  }
}

.module--full-image {
  position: relative;
}
.module--full-image .image-aspect-box {
  padding-top: 56%;
}

.module--full-image.-left-nudge {
  padding-left: 16.6666666667%;
}
@media screen and (min-width: 500px) {
  .module--full-image.-left-nudge {
    padding-left: 20%;
  }
}
@media screen and (min-width: 1000px) {
  .module--full-image.-left-nudge {
    padding-left: 33.33%;
  }
}

.module--full-image.-left-nudge--small {
  margin-left: 16.6666666667%;
}

.module--full-image.-right-nudge {
  padding-right: 16.6666666667%;
}
@media screen and (min-width: 500px) {
  .module--full-image.-right-nudge {
    padding-right: 20%;
  }
}
@media screen and (min-width: 1000px) {
  .module--full-image.-right-nudge {
    padding-right: 33.33%;
  }
}

.full-image__overlay {
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 40px;
  background: #ffff22;
  width: 70%;
  width: 50%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.full-image__overlay .capsule-wrap {
  margin-top: 0;
}

.-overlay-image {
  position: absolute !important;
  top: 0;
  left: 0;
  transition: 1.75s cubic-bezier(0.5, 0, 0.3, 1);
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

.animated .-overlay-image {
  -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0% 100%);
          clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0% 100%);
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
          clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
}

.-overlay-image.-delay {
  transition-delay: 0s;
}

.module--split-content .flx--50, .module--split-content .flx--33, .module--split-content .flx--25 {
  justify-content: center;
  flex-wrap: wrap !important;
}
.flx--50 {
  margin-left: -40px;
  margin-right: -40px;
}
@media screen and (max-width: 700px) {
  .flx--50 {
    margin: 0;
  }
}
.flx--50 > .cell-basic {
  padding: 40px;
  width: calc(50%);
}
@media screen and (max-width: 1100px) {
  .flx--50 > .cell-basic {
    padding: 30px;
  }
}
@media screen and (max-width: 800px) {
  .flx--50 > .cell-basic {
    padding: 20px;
  }
}
@media screen and (max-width: 700px) {
  .flx--50 > .cell-basic {
    width: 100%;
    max-width: 75%;
    padding-left: 0;
    padding-right: 0;
  }
}

.row-block-spacer {
  width: 80px;
  display: none;
}

.flx--33 {
  margin-left: -40px;
  margin-right: -40px;
}
@media screen and (max-width: 500px) {
  .flx--33 {
    margin-left: -20px;
    margin-right: -20px;
  }
}

.flx--33 > .cell-basic {
  padding: 40px;
  width: calc(33.33%);
}
@media screen and (max-width: 1100px) {
  .flx--33 > .cell-basic {
    padding: 30px;
  }
}
@media screen and (max-width: 1000px) {
  .flx--33 > .cell-basic {
    width: calc(50%);
    padding: 30px;
  }
}
@media screen and (max-width: 500px) {
  .flx--33 > .cell-basic {
    padding: 10px;
  }
}

.flx--25 {
  margin-left: -20px;
  margin-right: -20px;
}

.flx--25 > .cell-basic {
  width: calc(25%);
  padding: 20px;
}
@media screen and (max-width: 1200px) {
  .flx--25 > .cell-basic {
    width: calc(33.33%);
  }
}
@media screen and (max-width: 1100px) {
  .flx--25 > .cell-basic {
    width: calc(50%);
  }
}
@media screen and (max-width: 700px) {
  .flx--25 > .cell-basic {
    width: calc(100%);
    max-width: 400px;
  }
}

.-small-gaps .flx-container {
  margin-left: -10px;
  margin-right: -10px;
}
.-small-gaps .flx-container .cell-basic {
  padding: 10px;
}

.cell-basic .module--full-image {
  margin-bottom: 20px;
}

.cell-basic .basic-card__inner {
  padding: 40px;
}
@media screen and (max-width: 700px) {
  .cell-basic .basic-card__inner {
    padding: 20px;
  }
}
.cell-basic .basic-card__inner .module--full-image {
  margin-bottom: 20px;
  margin-left: -40px;
  margin-top: -40px;
  max-width: calc(100% + 80px);
}

.module--split-content {
  margin-bottom: 80px;
}
.module--split-content .flx-container {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
}

.module--split-content.-right-nudge {
  padding-right: 8.3333%;
}

.module--split-content .split-content__txt {
  width: 60%;
  min-width: 60%;
}

.module--split-content .split-content__img {
  width: 40%;
  min-width: 40%;
}

@media screen and (max-width: 1200px) {
  .module--split-content .flx-container {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 700px) {
  .module--split-content {
    margin-bottom: 60px;
  }
}

@media screen and (max-width: 1000px) {
  .module--split-content .split-content__txt {
    order: 2;
    margin-top: 20px;
  }
}

@media screen and (max-width: 1000px) {
  .module--split-content .split-content__img {
    order: 1;
  }
}

.module--split-content:last-of-type {
  margin-bottom: 0;
}

.module--split-content .heading-content {
  margin-bottom: 64px;
}

.cell_img-content .image-aspect-box {
  padding-top: 100%;
}
@media screen and (max-width: 750px) {
  .cell_img-content .image-aspect-box {
    padding-top: 56%;
  }
}

.cell_img-content .-wide-aspect {
  padding-top: 75%;
}

.cell_txt-content h2 {
  margin-bottom: 40px;
}

@media screen and (max-width: 1200px) {
  .cell_txt-content h2 {
    margin-bottom: 20px;
  }
}
.module--split-content .flx-container .cell:first-of-type .cell_txt-content {
  padding-right: 80px;
}
@media screen and (max-width: 1200px) {
  .module--split-content .flx-container .cell:first-of-type .cell_txt-content {
    padding-right: 40px;
  }
}
@media screen and (max-width: 1200px) {
  .module--split-content .flx-container .cell:first-of-type .cell_txt-content {
    padding: 0;
    max-width: 700px;
  }
}

.module--split-content .flx-container .cell:last-of-type .cell_txt-content {
  padding-left: 80px;
}
@media screen and (max-width: 1200px) {
  .module--split-content .flx-container .cell:last-of-type .cell_txt-content {
    padding-left: 40px;
  }
}
@media screen and (max-width: 1200px) {
  .module--split-content .flx-container .cell:last-of-type .cell_txt-content {
    padding: 0;
    max-width: 700px;
  }
}

.module---manifest-block {
  max-width: 800px;
  text-align: center;
  margin: auto;
  color: #FFA700;
}

.module--horizontal-row {
  width: 100%;
  max-width: 100%;
  white-space: nowrap;
  overflow-x: scroll;
  display: none;
}
.module--horizontal-row .flx-container {
  display: flex;
  flex-wrap: nowrap;
}

.horizontal-row--quotes .flx-container {
  align-items: center;
}

.module--quote-floater {
  max-width: 1100px;
  margin: auto;
  text-align: center;
  margin-bottom: 100px;
}
@media screen and (max-width: 1200px) {
  .module--quote-floater {
    margin-bottom: 80px;
    max-width: 80%;
  }
}
@media screen and (max-width: 700px) {
  .module--quote-floater {
    margin-bottom: 60px;
    max-width: 90%;
  }
}
.module--quote-floater h2 {
  color: #FFA700;
}

.section--bottom-cta .btn--basic {
  margin-right: 14px;
}
@media screen and (max-width: 800px) {
  .section--bottom-cta .btn--basic {
    margin-right: 8px;
  }
}
.section--bottom-cta .-btn-right {
  border: solid 1px #FFA700;
  background: #031600;
  color: white;
}
.section--bottom-cta .image-aspect-box {
  padding-top: 56%;
}

.rental-wrapper {
  background: white;
}

.module--split-heading {
  margin-bottom: 60px;
}
.module--split-heading .flx-container {
  display: flex;
  flex-wrap: wrap;
}
.module--split-heading .heading {
  width: 50%;
  margin: 0;
}
@media screen and (max-width: 1000px) {
  .module--split-heading .heading {
    width: 100%;
  }
}
.module--split-heading .heading h2 {
  margin: 0;
  margin-bottom: 20px;
}
.module--split-heading .txt-content {
  width: 50%;
  padding-left: 80px;
}
@media screen and (max-width: 1200px) {
  .module--split-heading .txt-content {
    padding-left: 40px;
  }
}
@media screen and (max-width: 1000px) {
  .module--split-heading .txt-content {
    width: 100%;
    padding: 0;
  }
}

.pdfemb-viewer {
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  border: none !important;
}

.routes__desc-container {
  position: relative;
  margin-top: 100px;
}
.routes__desc-container .flx-container {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.routes__desc-container:after {
  content: "";
  position: absolute;
  height: 100%;
  width: 1px;
  top: 0;
  left: 50%;
  background: black;
  transform: translateX(-50%);
}
@media screen and (max-width: 740px) {
  .routes__desc-container:after {
    display: none;
  }
}

.routes__unit {
  width: calc(50% - 10%);
}
.routes__unit h3 {
  font-size: 2.4rem;
}
@media screen and (max-width: 1000px) {
  .routes__unit {
    width: calc(50% - 6%);
  }
  .routes__unit h3 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 740px) {
  .routes__unit {
    width: 100%;
    margin-bottom: 60px;
    border-left: solid 1px black;
    padding-left: 20px;
  }
  .routes__unit h3 {
    font-size: 2rem;
  }
}

@media screen and (max-width: 700px) {
  .heading-txt--page-start {
    padding-top: 60px;
  }
}
.heading-txt--page-start .heading-p {
  max-width: 100%;
  font-size: 2rem;
}
@media screen and (max-width: 700px) {
  .heading-txt--page-start .heading-p {
    font-size: 1.8rem;
  }
}

.module--content-block--vinkit {
  margin-bottom: 60px;
}
.module--content-block--vinkit .vinkit__heading {
  color: #FFA700;
}
.module--content-block--vinkit .vinkit__txt-content {
  margin-top: 30px;
}
@media screen and (min-width: 700.11px) {
  .module--content-block--vinkit .vinkit__txt-content {
    font-size: 1.6rem;
  }
}
.module--content-block--vinkit ul {
  margin-left: 14px;
}
.module--content-block--vinkit li {
  margin-bottom: 20px;
}
.module--content-block--vinkit li::marker {
  color: #FFA700;
}

.module--basic-article ul {
  margin-left: 14px;
  margin-top: 20px;
}
.module--basic-article li {
  margin-bottom: 20px;
}
.module--basic-article li::marker {
  color: #FFA700;
}
.module--basic-article ul ul li::marker {
  color: black;
}

.-single-cell {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

img[data-action=zoom] {
  cursor: pointer;
  cursor: -moz-zoom-in;
}

.zoom-img,
.zoom-img-wrap {
  position: relative;
  z-index: 666;
  transition: all 300ms;
}

img.zoom-img {
  cursor: pointer;
  cursor: -moz-zoom-out;
}

.zoom-overlay {
  z-index: 420;
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  filter: "alpha(opacity=0)";
  opacity: 0;
  transition: opacity 300ms;
}

.zoom-overlay-open .zoom-overlay {
  filter: "alpha(opacity=100)";
  opacity: 1;
}

.zoom-overlay-open,
.zoom-overlay-transitioning {
  cursor: default;
}

.lazy-anim, .lazyanim {
  opacity: 0;
}

.lazy-anim.lazyloaded, .lazyanim.lazyloaded {
  opacity: 1;
  transition: opacity 1s;
}

.text-container {
  margin-bottom: 40px;
}

.module--split-content .split-content__img {
  position: relative;
}

.module--full-image {
  position: relative;
  width: 100%;
  max-width: 100%;
}
.module--full-image .flx-container {
  position: relative;
}
.module--full-image .full-image {
  display: flex;
  width: 100%;
}
.module--full-image .placeholder-img {
  opacity: 0;
  min-width: 100%;
}

.logo-img .placeholder-img {
  opacity: 0;
  min-width: 100%;
}
.logo-img .placeholder-img img {
  opacity: 0;
  min-width: 100%;
}
.logo-img .lazy-img img {
  -o-object-fit: contain;
     object-fit: contain;
}

.split-content__img .placeholder-img img, .full-image .placeholder-img img {
  width: 100%;
}

.lazy-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.lazy-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.cropped-card-image {
  overflow: hidden;
  max-height: 250px;
}

.capsule-wrap {
  display: flex;
  flex-wrap: wrap;
}

.capsule-wrap:empty {
  display: none;
}

.capsule-wrap--center {
  text-align: center;
  margin-left: 20px;
  justify-content: center;
}

.capsule-wrap .btn--basic {
  margin-right: 20px;
  margin-bottom: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.module--logo-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.module--logo-group .logo-img {
  position: relative;
  width: 300px;
  margin-right: 27px;
  border-radius: 1.5rem;
  overflow: hidden;
  -webkit-mask-image: -webkit-radial-gradient(white, black);
}

.page-template-podcast .header-block__meta, .page-template-materiaalit .header-block__meta {
  padding-left: 0;
}

.has-icons .contact-avatar__image {
  border-radius: 10px;
}
.has-icons h3, .has-icons h4 {
  margin-top: 0px;
}

.no-margin {
  margin-bottom: 0;
}

.section--home-lifcast .section-bg-container {
  background: #005e83 !important;
}

.cast-image-cell {
  min-height: 400px;
}

.lazy-img-aspect {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 59%;
}
@media screen and (max-width: 1700px) {
  .lazy-img-aspect {
    padding-top: 65%;
  }
}
.lazy-img-aspect img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.cast-preview {
  display: flex;
}
.cast-preview .cell_txt-content {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  justify-content: space-between;
  padding-left: 100px;
}

.cast-play-cell {
  background: #EBE4CF;
  transition: all 0.5s;
  border-radius: 10px;
  display: flex;
  overflow: hidden;
  color: #000000;
  cursor: pointer;
}
.cast-play-cell img {
  width: 100px;
}
.cast-play-cell .content {
  align-items: center;
  display: flex;
  margin-left: 16px;
  position: relative;
  width: 100%;
}
.cast-play-cell .content h5 {
  font-size: 1.7rem;
}
.cast-play-cell .content .-pod-number {
  /* background: blue; */
  border-radius: 999px;
  border: solid 1px;
  color: #04aef2;
  height: 40px;
  width: 40px;
  font-size: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: solid 1px;
  margin-right: 16px;
}
.cast-play-cell .content .-header {
  padding: 7px 8px;
  position: absolute;
  right: 0;
  top: 0;
  opacity: 0;
  transition: 0.5s;
  transform: translateY(2px);
}
.cast-play-cell .content .-header a {
  color: #00d084;
  padding: 6px 14px;
  border-radius: 99px;
  margin-left: 10px;
  line-height: 1;
  font-size: 1.4rem;
}
.cast-play-cell .capsule-wrap a {
  margin: 0;
}

.cast-play-cell:hover {
  background: #f5f2ea;
}
.cast-play-cell:hover .-header {
  opacity: 1;
  transform: none;
}

.cast-play-footer .capsule-wrap {
  margin-top: 0;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-top: 20px;
}
.cast-play-footer .capsule-wrap .btn--basic--small {
  background: none;
  padding: 10px;
  min-width: 10px;
}
.cast-play-footer .capsule-wrap a {
  margin: 0;
  margin-left: 10px;
}

.anim--cell:nth-of-type(1) {
  transition-delay: 0.25s;
}

.anim--cell:nth-of-type(2) {
  transition-delay: 0.5s;
}

.anim--cell:nth-of-type(3) {
  transition-delay: 0.75s;
}

.anim--cell:nth-of-type(4) {
  transition-delay: 1s;
}

.anim--cell:nth-of-type(5) {
  transition-delay: 1.25s;
}

.anim--cell:nth-of-type(6) {
  transition-delay: 1.5s;
}

.anim--cell:nth-of-type(7) {
  transition-delay: 1.75s;
}

.anim--cell:nth-of-type(8) {
  transition-delay: 2s;
}

.anim--cell:nth-of-type(9) {
  transition-delay: 2.25s;
}

.anim--cell:nth-of-type(10) {
  transition-delay: 2.5s;
}

.anim--cell:nth-of-type(11) {
  transition-delay: 2.75s;
}

.anim--cell:nth-of-type(12) {
  transition-delay: 3s;
}

.anim--cell:nth-of-type(13) {
  transition-delay: 3.25s;
}

.anim--cell:nth-of-type(14) {
  transition-delay: 3.5s;
}

.anim--cell:nth-of-type(15) {
  transition-delay: 3.75s;
}

[data-aos=info-boxes] {
  opacity: 0;
  transform: translateY(10%);
  transition: all 0.85s;
  transition-property: transform, opacity;
}
[data-aos=info-boxes].aos-animate {
  opacity: 1;
  transform: none;
}

.anim-cell[data-aos=heading-txt] .tag {
  opacity: 0;
  transform: translateY(20px);
  transition: all 0.85s;
  transition-property: transform, opacity;
}
.anim-cell[data-aos=heading-txt] h3 {
  opacity: 0;
  transform: translateY(20px);
  transition: all 0.85s 0.25s;
  transition-property: transform, opacity;
}
.anim-cell[data-aos=heading-txt].aos-animate .tag, .anim-cell[data-aos=heading-txt].aos-animate h3 {
  opacity: 1;
  transform: none;
}

.no-anim .anim--cell {
  opacity: 1 !important;
  transform: none !important;
}

.slider-section {
  overflow: hidden;
}

.EN-page .-desktop-nav {
  visibility: hidden;
}
.EN-page .mobile-nav-trigger-box {
  display: none;
}
.EN-page .nav-cta {
  visibility: hidden !important;
}
.EN-page .flx-nav {
  margin: auto;
}
@media only screen and (min-width: 1200.11px) {
  .EN-page .flx-nav {
    max-width: 75%;
  }
}
.EN-page .lang-switch {
  right: 0;
}
@media only screen and (max-width: 600px) {
  .EN-page .lang-switch a {
    font-size: 3.6vw;
  }
}
.EN-page .link-fi {
  color: inherit !important;
  opacity: 1;
  font-size: 2.2rem;
}
.EN-page .english-post-loop {
  margin: auto;
}
@media only screen and (min-width: 1200.11px) {
  .EN-page .english-post-loop {
    max-width: 75%;
  }
}
.EN-page .english-post-loop .single-heading {
  border-top: solid 1px #c5c5c5;
  border-bottom: dotted 1px;
}
.EN-page .main-footer {
  display: none;
}
.EN-page .en-footer--eq {
  margin: auto;
}
@media only screen and (min-width: 1200.11px) {
  .EN-page .en-footer--eq {
    max-width: 75%;
  }
}

.section-nudge--left {
  padding-left: 16.666666666%;
}
@media only screen and (max-width: 750px) {
  .section-nudge--left {
    padding-left: 0;
  }
}

.section-nudge--right {
  padding-right: 16.666666666%;
}
@media only screen and (max-width: 750px) {
  .section-nudge--right {
    padding-right: 0;
  }
}

.module--super-text h1, .module--super-text h2, .module--super-text h3 {
  font-family: "sans-medium" sans-serif;
  font-weight: 500;
  line-height: 1;
  margin: 0;
}
.module--super-text em {
  font-weight: 500;
  text-transform: none;
  text-transform: initial;
}
.module--super-text p {
  margin-top: 30px;
}
@media screen and (max-width: 700px) {
  .module--super-text p {
    margin-top: 20px;
  }
}
.module--super-text h3 {
  font-size: 38px;
  margin-bottom: 10px !important;
  line-height: 1;
}
@media screen and (max-width: 800px) {
  .module--super-text h3 {
    font-size: 28px;
  }
}

.super-text-link {
  font-weight: 600;
  font-size: 1.8rem;
  margin-top: 20px;
}
@media screen and (max-width: 700px) {
  .super-text-link {
    font-size: 1.5rem;
  }
}
.super-text-link a {
  margin-left: 4px;
  background: #FFD05A;
  padding: 8px 9px;
  line-height: 1;
  border-radius: 6px;
  display: inline-flex;
}
.super-text-link a:hover {
  background: black;
  color: white;
}

.word:nth-of-type(1) {
  transition-delay: 0.05s !important;
}

.word:nth-of-type(2) {
  transition-delay: 0.1s !important;
}

.word:nth-of-type(3) {
  transition-delay: 0.15s !important;
}

.word:nth-of-type(4) {
  transition-delay: 0.2s !important;
}

.word:nth-of-type(5) {
  transition-delay: 0.25s !important;
}

.word:nth-of-type(6) {
  transition-delay: 0.3s !important;
}

.word:nth-of-type(7) {
  transition-delay: 0.35s !important;
}

.word:nth-of-type(8) {
  transition-delay: 0.4s !important;
}

.word:nth-of-type(9) {
  transition-delay: 0.45s !important;
}

.word:nth-of-type(10) {
  transition-delay: 0.5s !important;
}

.word:nth-of-type(11) {
  transition-delay: 0.55s !important;
}

.word:nth-of-type(12) {
  transition-delay: 0.6s !important;
}

.word:nth-of-type(13) {
  transition-delay: 0.65s !important;
}

.word:nth-of-type(14) {
  transition-delay: 0.7s !important;
}

.word:nth-of-type(15) {
  transition-delay: 0.75s !important;
}

.word:nth-of-type(16) {
  transition-delay: 0.8s !important;
}

.word:nth-of-type(17) {
  transition-delay: 0.85s !important;
}

.word:nth-of-type(18) {
  transition-delay: 0.9s !important;
}

.word:nth-of-type(19) {
  transition-delay: 0.95s !important;
}

.word:nth-of-type(20) {
  transition-delay: 1s !important;
}

.animation-element.module--super-text h1, .animation-element.module--super-text h2, .animation-element.module--super-text h3 {
  transform: translate(0px, 20px);
  opacity: 0;
  transition: transform 1s;
  margin: 0;
}
.animation-element.module--super-text h1 .word, .animation-element.module--super-text h2 .word, .animation-element.module--super-text h3 .word {
  transition: 1s;
  opacity: 0.1;
}
.animation-element.module--super-text h1 em .word, .animation-element.module--super-text h2 em .word, .animation-element.module--super-text h3 em .word {
  transform: skew(-23deg) translate(34px, 0px);
}
.animation-element.module--super-text p, .animation-element.module--super-text h4, .animation-element.module--super-text .capsule-wrap {
  opacity: 0;
  transition: all 1s 0.5s;
  transform: translateY(20px);
}
.animation-element.module--super-text h6 {
  opacity: 0;
  transition: all 1s;
  transform: translateX(20px);
}
.animation-element.module--super-text h6.has-text-align-center {
  transform: translateY(20px);
}

.animation-element.scroll-animation.module--super-text h1, .animation-element.scroll-animation.module--super-text h2, .animation-element.scroll-animation.module--super-text h3 {
  opacity: 1;
  margin: 0;
  transform: none;
}
.animation-element.scroll-animation.module--super-text h1 .word, .animation-element.scroll-animation.module--super-text h2 .word, .animation-element.scroll-animation.module--super-text h3 .word {
  transform: translateY(0);
  opacity: 1;
}
.animation-element.scroll-animation.module--super-text h1 em, .animation-element.scroll-animation.module--super-text h2 em, .animation-element.scroll-animation.module--super-text h3 em {
  transform: translateX(0px);
}
.animation-element.scroll-animation.module--super-text p, .animation-element.scroll-animation.module--super-text h4, .animation-element.scroll-animation.module--super-text h6, .animation-element.scroll-animation.module--super-text .capsule-wrap {
  opacity: 1;
  transform: translateY(0);
}

.scroll-animation {
  pointer-events: none;
}

.scroll-animation--lets-click {
  pointer-events: auto;
}

.layout--sidebar-header {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.layout--sidebar-header .sidebar-header__left {
  width: 50%;
  padding-right: 2vw;
}
.layout--sidebar-header .sidebar-header__right {
  width: 50%;
}
.layout--sidebar-header .sidebar-header__right .fake-selvenne {
  visibility: hidden !important;
  opacity: 0 !important;
}
@media screen and (max-width: 1200px) {
  .layout--sidebar-header .sidebar-header__left {
    width: 100%;
    max-width: 100%;
  }
  .layout--sidebar-header .sidebar-header__right {
    width: 100%;
  }
  .layout--sidebar-header .sidebar-header__right .fake-selvenne {
    visibility: hidden !important;
    opacity: 0 !important;
    display: none;
  }
}

@media screen and (max-width: 1200px) {
  .section--home-events .sidebar-header__left {
    width: 100%;
  }
  .section--home-events .sidebar-header__right {
    width: 100%;
  }
}
@media screen and (max-width: 1200px) {
  .section--index-pages .sidebar-header__left {
    width: 100%;
  }
  .section--index-pages .sidebar-header__right {
    width: 100%;
  }
}
.module--page-author {
  border-top: solid 1px #d2d2d2;
}
.module--page-author .avatar-contact-person:last-of-type {
  border-bottom: solid 1px #d2d2d2;
}

.author-link {
  font-size: 1.3rem;
  color: black;
}
.author-link:hover {
  text-decoration: underline;
}

.next-article-container {
  margin-top: 40px;
}

.avatar-contact-person {
  padding: 20px 0;
}
.avatar-contact-person .flx-container {
  display: flex;
}

.avatar-contact-person__image {
  width: 160px;
}
@media screen and (max-width: 700px) {
  .avatar-contact-person__image {
    width: 60px;
  }
}
.avatar-contact-person__image .image-aspect-box {
  padding-top: 100%;
}

.avatar-contact-person__content {
  width: calc(100% - 200px);
  flex-grow: 2;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-left: 30px;
}
@media screen and (max-width: 1100px) {
  .avatar-contact-person__content {
    padding-left: 30px;
  }
}
@media screen and (max-width: 1100px) {
  .avatar-contact-person__content {
    padding-left: 20px;
  }
}
@media screen and (max-width: 700px) {
  .avatar-contact-person__content {
    padding-left: 10px;
  }
}
.avatar-contact-person__content h4 {
  margin: 0;
}
.avatar-contact-person__content p {
  font-size: 1.6rem;
  margin-bottom: 7px;
  line-height: 1;
}
@media screen and (max-width: 700px) {
  .avatar-contact-person__content p {
    font-size: 1.5rem;
  }
}
.avatar-contact-person__content p.strong {
  font-size: 2rem;
  font-weight: 500;
}
.avatar-contact-person__content .-link:first-of-type {
  margin-top: 30px;
}
.avatar-contact-person__content a {
  font-weight: 500;
}
.avatar-contact-person__content h5.content__top {
  font-size: 2.2rem;
  margin-bottom: 20px;
}
@media screen and (max-width: 1200px) {
  .avatar-contact-person__content h5.content__top {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 700px) {
  .avatar-contact-person__content h5.content__top {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 500px) {
  .avatar-contact-person__content h5.content__top {
    font-size: 1.6rem;
  }
}
.avatar-contact-person__content h5.content__top span {
  font-size: 1.2rem;
  opacity: 0.6;
  font-weight: 500;
  margin-top: 4px;
  display: block;
}
@media screen and (max-width: 700px) {
  .avatar-contact-person__content h5.content__top span {
    font-size: 1.1rem;
  }
}

.module--contact-info {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.module--contact-info .avatar-contact-person {
  min-width: 50%;
  padding: 20px 20px;
  max-width: 300px;
}
.module--contact-info .avatar-contact-person .flx-container {
  flex-direction: column;
  align-items: center;
}
.module--contact-info .avatar-contact-person__content {
  margin-top: 20px;
  padding: 0;
  width: 100%;
}

.contact-page-persons {
  margin-left: -20px;
  margin-right: -20px;
}

.contact-page-persons .module--contact-info {
  display: flex;
  flex-wrap: wrap;
}
.contact-page-persons .avatar-contact-person {
  min-width: 33.33%;
  width: 33.33%;
  margin-bottom: 30px;
}
.contact-page-persons .avatar-contact-person__image {
  width: 100%;
}
.contact-page-persons .avatar-contact-person__image {
  width: 80px;
  border-radius: 999px;
}
.contact-page-persons .avatar-contact-person__image div {
  border-radius: 999px;
}
.contact-page-persons .contact-area {
  font-weight: 500;
  line-height: 1.1;
  text-align: center;
  font-size: 1.6rem;
}
.contact-page-persons .btn--basic {
  margin-top: 20px;
  display: inline-flex;
}
@media only screen and (max-width: 1000px) {
  .contact-page-persons .avatar-contact-person {
    min-width: 100%;
    width: 100%;
  }
}

@media only screen and (min-width: 700.11px) {
  .contact-page-persons--smaller .avatar-contact-person .flx-container {
    align-items: flex-start;
    justify-content: flex-start;
  }
  .contact-page-persons--smaller .avatar-contact-person__content {
    text-align: left;
  }
}
.contact-page-persons--smaller .avatar-contact-person__image {
  width: 100%;
  position: relative;
  display: block;
  overflow: hidden;
  -webkit-mask-image: -webkit-radial-gradient(white, black);
  border-radius: 2.6rem;
}
@media screen and (max-width: 600px) {
  .contact-page-persons--smaller .avatar-contact-person__image {
    border-radius: 1.5rem;
  }
}
.contact-page-persons--smaller .avatar-contact-person__image div {
  border-radius: 0px;
}
.contact-page-persons--smaller .avatar-contact-person__image img {
  border-radius: 2.6rem;
}
@media screen and (max-width: 600px) {
  .contact-page-persons--smaller .avatar-contact-person__image img {
    border-radius: 1.5rem;
  }
}
.contact-page-persons--smaller .avatar-contact-person {
  min-width: 25%;
  width: 25%;
}
.contact-page-persons--smaller .avatar-contact-person .-name {
  font-size: 2.6rem;
}
.contact-page-persons--smaller .avatar-contact-person .-title {
  font-size: 2.2rem;
}
@media only screen and (max-width: 1200px) {
  .contact-page-persons--smaller .avatar-contact-person {
    min-width: 33.33%;
    width: 33.33%;
  }
}
@media only screen and (max-width: 1000px) {
  .contact-page-persons--smaller .avatar-contact-person {
    min-width: 50%;
    width: 50%;
  }
}
@media only screen and (max-width: 600px) {
  .contact-page-persons--smaller .avatar-contact-person {
    min-width: 100%;
    width: 100%;
  }
}

.module--full-image .full-image {
  position: relative;
  overflow: hidden;
}

.module--split-content--50 .flx-container {
  align-items: flex-start;
}
.module--split-content--50 .image-wrap {
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 1000px) {
  .module--split-content--50 .image-wrap {
    margin-bottom: 20px;
  }
}
.module--split-content--50 .cell {
  width: 50%;
  min-width: 50%;
}
@media only screen and (max-width: 1000px) {
  .module--split-content--50 .cell {
    width: 100%;
    min-width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }
}
@media only screen and (max-width: 600px) {
  .module--split-content--50 .cell {
    width: 100%;
    max-width: 100%;
  }
}
.module--split-content--50 .cell_txt-content {
  padding: 0 !important;
}
.section--screen-layout .image-wrap {
  border-radius: 0;
}

.module--split-content--centered {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.module--split-content--centered .flx-container {
  align-items: initial;
}
.module--split-content--centered .split-content__txt {
  padding-top: 120px;
  padding-bottom: 120px;
  display: flex;
  align-items: center;
  min-height: 700px;
}
@media only screen and (max-width: 1600px) {
  .module--split-content--centered .split-content__txt {
    min-height: 500px;
  }
}
@media only screen and (max-width: 1000px) {
  .module--split-content--centered .split-content__txt {
    min-height: 300px;
    padding: 50px 30px;
    margin: 0;
  }
}
@media only screen and (max-width: 600px) {
  .module--split-content--centered .split-content__txt {
    padding: 50px 16px;
  }
}
.module--split-content--centered .image-wrap {
  width: 100%;
  height: 100%;
}
@media only screen and (min-width: 1000.11px) {
  .module--split-content--centered .image-wrap .placeholder-img {
    display: none;
  }
}

.module--split-content--50.normal-width {
  margin: auto;
}
@media only screen and (max-width: 1200px) {
  .module--split-content--50.normal-width {
    max-width: 100%;
    margin: auto;
  }
}
@media only screen and (max-width: 1000px) {
  .module--split-content--50.normal-width {
    max-width: 100%;
    margin: auto;
    padding: 0 8vw;
  }
}
@media only screen and (max-width: 700px) {
  .module--split-content--50.normal-width {
    max-width: 100%;
    margin: auto;
    padding: 0;
  }
}

.module--full-image.normal-width {
  max-width: 75%;
  margin: auto;
}
@media only screen and (max-width: 1200px) {
  .module--full-image.normal-width {
    max-width: 100%;
    margin: auto;
  }
}

.section--screen-layout .flx-container {
  flex-wrap: nowrap;
}
.section--screen-layout .split-content__txt--left {
  width: 100%;
  max-width: 2000px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
.section--screen-layout .split-content__txt--right {
  width: 100%;
  max-width: 2000px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

@media only screen and (min-width: 1000.11px) {
  .module--split-content--basic .split-content__txt--right {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .module--split-content--basic .split-content__txt--left {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .module--split-content--basic .image-right {
    padding-left: 8.333333333%;
  }
  .module--split-content--basic .image-left {
    padding-right: 8.333333333%;
  }
}

@media only screen and (min-width: 2000px) {
  .section--screen-layout .split-content__txt--left > div {
    margin-left: calc(50vw - 1000px);
  }
  .section--screen-layout .split-content__txt--right > div {
    margin-right: calc(50vw - 1000px);
  }
}
@media only screen and (max-width: 1000px) {
  .section--screen-layout .flx-container {
    flex-wrap: wrap;
  }
  .section--screen-layout .split-content__img {
    width: 100%;
    max-width: 100%;
  }
}
.home-hero-layout .split-content__img {
  min-width: 58%;
}
.home-hero-layout .split-content__txt {
  width: calc(100% - 68%);
  min-width: 100px;
}
.home-hero-layout .flx-container {
  align-items: initial;
}
.home-hero-layout .image-wrap {
  margin: 0 !important;
}

.home-hero-layout {
  transition: 1s 0.75s;
  opacity: 0;
}

.hero-layout-init {
  transform: translateY(0);
  opacity: 1;
}

@media only screen and (max-width: 1000px) and (max-width: 700px) {
  .home-hero-layout {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 1000px) {
  .home-hero-layout .split-content__img {
    width: 100% !important;
    max-width: 90vw !important;
    margin: 0 !important;
    order: 3;
  }
}
@media only screen and (max-width: 1000px) {
  .home-hero-layout .split-content__txt {
    width: 100% !important;
    max-width: 90vw !important;
    margin: 0;
    margin-bottom: 40px;
    padding-left: 30px;
  }
}
@media only screen and (max-width: 1000px) and (max-width: 700px) {
  .home-hero-layout .split-content__txt {
    padding-left: 16px;
    margin: 0;
  }
}
@media only screen and (max-width: 1000px) {
  .home-hero-layout .cell_txt-content {
    padding: 0 !important;
  }
}
@media only screen and (max-width: 1000px) {
  .home-hero-layout .flx-container {
    align-items: initial;
  }
}
.section--screen-layout .has--gradient-bg {
  padding: 0 !important;
  transform: translate(0px, 16px);
}
.section--screen-layout .has--gradient-bg .image-wrap {
  transition: transform 1s;
  transform: translate(16px, -16px);
}
@media only screen and (max-width: 700px) {
  .section--screen-layout .has--gradient-bg .image-wrap {
    transform: translate(8px, -8px);
  }
}

.has-image--right.section--screen-layout .has--gradient-bg {
  padding: 0;
}
.has-image--right.section--screen-layout .has--gradient-bg .image-wrap {
  transition: transform 1s;
  transform: translate(-16px, -16px);
}
@media only screen and (max-width: 700px) {
  .has-image--right.section--screen-layout .has--gradient-bg .image-wrap {
    transform: translate(-8px, -8px);
  }
}

.image-wrap--bg-gradient {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
}

.module--section-bg {
  pointer-events: none;
  position: absolute;
  background-size: cover;
  background-position: center center;
  width: 100%;
  top: 0;
  height: 100%;
  left: 0;
  overflow: hidden;
}
.module--section-bg .placeholder-img {
  transition: opacity 0.5s;
}

.module--section-bg.lazyload .placeholder-img {
  opacity: 1;
}

.module--tyot-app {
  transition: all 0.25s;
  transform: translateY(0);
}

.S-animating--filters .module--tyot-app {
  opacity: 0;
  transform: translateY(40px);
}
.S-animating--filters .module--tyot-app {
  opacity: 0;
}

.tyot-sidebar-wrap {
  display: flex;
}
@media only screen and (min-width: 1500.11px) {
  .tyot-sidebar-wrap {
    padding-left: 2vw;
    padding-right: 2vw;
  }
}
@media only screen and (min-width: 1500.11px) and (max-width: 1400px) {
  .tyot-sidebar-wrap {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media only screen and (max-width: 1500px) {
  .tyot-sidebar-wrap {
    display: block;
  }
}
.tyot-sidebar-wrap .sticky-nav--tyot {
  width: 33.33%;
  padding-right: 24px;
}
@media only screen and (max-width: 1500px) {
  .tyot-sidebar-wrap .sticky-nav--tyot {
    width: 100%;
  }
}
.tyot-sidebar-wrap .section--tyot-app {
  width: 66.66%;
}
@media only screen and (max-width: 1500px) {
  .tyot-sidebar-wrap .section--tyot-app {
    width: 100%;
  }
}

.sticky-nav--tyot > div {
  position: sticky;
  top: 0;
}

.cell--tyot-card {
  width: 50%;
}
@media only screen and (max-width: 750px) {
  .cell--tyot-card {
    width: 100%;
  }
}

.cell--tyot-card.S-disabled__item {
  display: none !important;
}

.tyot.S-disabled__item {
  display: none !important;
}

.tyot-card__client-name {
  margin-top: 12px;
  margin-bottom: -12px;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  text-transform: none;
  text-transform: initial;
  font-size: 2.2rem;
  line-height: 1.1;
}

.tyot-card__project-name {
  margin-top: 12px;
  font-weight: 600;
  line-height: 1.2;
  font-size: 2.2rem;
}

.home .tyot-card__project-name, .home .tyot-card__client-name {
  font-size: 2.6rem;
}
@media screen and (max-width: 600px) {
  .home .tyot-card__project-name, .home .tyot-card__client-name {
    font-size: 2rem;
  }
}

.swiper--home-tyot {
  margin: 0 -20px;
  padding-top: 40px;
}
@media screen and (max-width: 600px) {
  .swiper--home-tyot {
    margin: 0 -10px;
  }
}

.swiper--tyot {
  margin: 0 -20px;
}

.home .tyot-slider-card {
  width: 50% !important;
  min-width: 50% !important;
}
@media screen and (max-width: 1000px) {
  .home .tyot-slider-card {
    width: 75% !important;
    min-width: 75% !important;
  }
}
@media screen and (max-width: 600px) {
  .home .tyot-slider-card {
    width: 90% !important;
    min-width: 90% !important;
  }
  .home .tyot-slider-card .basic-card__content {
    padding: 10px;
  }
}

.tyot-slider-card {
  width: 33.33;
  min-width: 33.33%;
}
.tyot-slider-card .basic-card__image > div {
  height: 0;
  padding-top: 66.67%;
}
.tyot-slider-card .placeholder-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.cell--tyot-card .basic-card__image > div, .single-article-card .basic-card__image > div {
  height: 0;
  padding-top: 66.67%;
}
.cell--tyot-card .placeholder-img, .single-article-card .placeholder-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.swiper-nav--right-absolute {
  justify-content: flex-end !important;
}
.swiper-nav--right-absolute .swiper-button-next, .swiper-nav--right-absolute .swiper-button-prev {
  background: white;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  font-size: 14px;
  color: black;
}
.swiper-nav--right-absolute .swiper-button-next:after, .swiper-nav--right-absolute .swiper-button-prev:after {
  font-size: 22px;
}

.swiper--home-tyot .-meta {
  opacity: 0;
  transition: all 0.5s;
  transform: translateY(20px);
  transition-delay: 0s;
}
.swiper--home-tyot .swiper-slide-active .-meta, .swiper--home-tyot .swiper-slide-next .-meta, .swiper--home-tyot .swiper-slide-prev .-meta {
  opacity: 1;
  transform: none;
  transition-delay: 0.5s;
}

.tyot-slider-card .lazy-img {
  transition: 0.5s;
}

.tyot-slider-card:hover .tyot-card__project-name {
  color: black;
}
.tyot-slider-card:hover .lazy-img {
  transform: scale(1.05);
}

.cell--tyot-card .lazy-img {
  transition: 0.5s;
}

.cell--tyot-card:hover .tyot-card__project-name {
  color: black;
}
.cell--tyot-card:hover .lazy-img {
  transform: scale(1.05);
}

.single-article-card .lazy-img {
  transition: 0.5s;
}

.swiper-slide a {
  width: 100%;
}

.single-article-card:hover .tyot-card__project-name {
  color: black;
}
.single-article-card:hover .lazy-img {
  transform: scale(1.05);
}

.single-article-card .-title {
  transition: color 0.5s;
}

.single-article-card .-desc {
  transition: all 0.5s;
  opacity: 0.6;
}

.no-touch-device .single-article-card a:hover .-title {
  color: black;
}
.no-touch-device .single-article-card a:hover .-desc {
  opacity: 1;
}

.module--osaamisalueet .sidebar-h2 {
  position: sticky;
  top: 20px;
  font-family: "Cormorant Garamond", serif;
  font-weight: 400;
  font-style: italic;
}
.module--osaamisalueet .sidebar-header__right {
  display: flex;
  flex-wrap: wrap;
}
.module--osaamisalueet .cell--osaamislalue {
  width: 50%;
  width: calc(50% - 20px);
  margin-left: 20px;
  margin-bottom: 20px;
  padding-bottom: 10px;
  box-shadow: rgba(0, 0, 0, 0.02) 0px 1px 3px 0px, rgba(27, 31, 35, 0.15) 0px 0px 0px 1px;
  /* text-align: center; */
  padding: 24px;
  padding-bottom: 10px;
  border-radius: 8px;
}
@media screen and (max-width: 1200px) {
  .module--osaamisalueet .cell--osaamislalue {
    margin-left: 10px;
    margin-right: 10px;
  }
}
@media screen and (max-width: 700px) {
  .module--osaamisalueet .cell--osaamislalue {
    margin-left: 0px;
    margin-right: 0px;
    width: 100%;
  }
}
.module--osaamisalueet .cell--osaamislalue h3 {
  font-family: "Golos Text", sans-serif;
  font-weight: 500;
  margin-bottom: 0.5em;
  font-size: 2.2rem;
}
@media screen and (max-width: 1200px) {
  .module--osaamisalueet .cell--osaamislalue h3 {
    font-size: 1.8rem;
  }
}
.module--osaamisalueet .cell--osaamislalue p {
  font-size: 1.7rem;
  line-height: 1.3;
}
@media screen and (max-width: 1200px) {
  .module--osaamisalueet .cell--osaamislalue p {
    font-size: 1.5rem;
  }
}
.module--osaamisalueet .cell--osaamislalue a {
  color: black;
  font-weight: 500;
  display: inline-flex;
  margin-left: -4px;
  transition: transform 0.3s;
  align-items: center;
}
.module--osaamisalueet .cell--osaamislalue a:hover {
  transform: translateX(12px);
}
.module--osaamisalueet .cell--osaamislalue a:before {
  content: "";
  height: 6px;
  width: 6px;
  border-radius: 99px;
  transform: translateX(-6px);
  background: black;
  opacity: 0;
  transition: opacity 0.3s;
}
.module--osaamisalueet .cell--osaamislalue a:hover:before {
  opacity: 1;
}

.module--breakfast-bullets .-inner-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  background: #e0e0e0;
}
.module--breakfast-bullets .-inner-box .editor-content-cell {
  width: calc(50% - 0.5px);
  margin-bottom: 1px;
  padding: 3vw;
  padding-bottom: 1vw;
  background: white;
  position: relative;
  min-height: 200px;
  border: solid 1px white;
}
@media screen and (max-width: 1200px) {
  .module--breakfast-bullets .-inner-box .editor-content-cell {
    min-height: 160px;
  }
}
@media screen and (max-width: 700px) {
  .module--breakfast-bullets .-inner-box .editor-content-cell {
    width: calc(100%);
    padding: 0;
    margin: 0;
    min-height: 10px;
    padding-bottom: 20px;
  }
}
.module--breakfast-bullets .-inner-box .editor-content-cell:nth-of-type(odd) {
  padding-left: 0;
}
.module--breakfast-bullets .-inner-box .editor-content-cell:nth-of-type(odd) .-inner {
  padding-left: 0;
}
.module--breakfast-bullets .-inner-box .editor-content-cell:first-of-type:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  height: 40px;
  width: 40px;
  background: white;
  transform: translate(20px, 20px);
  z-index: 2;
}
.module--breakfast-bullets .-inner-box .editor-content-cell:nth-of-type(4n+1), .module--breakfast-bullets .-inner-box .editor-content-cell:nth-of-type(4n+1) + * {
  padding-top: 0;
}
.module--breakfast-bullets .-inner-box .editor-content-cell:nth-of-type(4n+3), .module--breakfast-bullets .-inner-box .editor-content-cell:nth-of-type(4n+3) + * {
  margin-bottom: 0;
}
.module--breakfast-bullets p strong {
  font-size: 2rem;
  font-weight: 600;
  color: black;
  margin: 0;
  line-height: 1;
}
@media screen and (max-width: 1200px) {
  .module--breakfast-bullets p strong {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 600px) {
  .module--breakfast-bullets p strong {
    font-size: 1.6rem;
  }
}
.module--breakfast-bullets p {
  font-size: 2.6rem;
  font-weight: 500;
  margin: 0;
  line-height: 1.2;
}
@media screen and (max-width: 1200px) {
  .module--breakfast-bullets p {
    font-size: 2rem;
  }
}
@media screen and (max-width: 600px) {
  .module--breakfast-bullets p {
    font-size: 2rem;
  }
}

.section--next-project {
  margin: 100px 0;
}
@media screen and (max-width: 1000px) {
  .section--next-project {
    margin: 60px 0;
  }
}
@media screen and (max-width: 600px) {
  .section--next-project {
    margin: 40px 0;
  }
}
.section--next-project .next-project-label {
  color: black;
}
.section--next-project a:hover .next-project-label {
  color: black;
  transition: color 0.5s;
}
.section--next-project a:hover h2, .section--next-project a:hover .word {
  color: black;
  transition: color 0.5s;
  transition-delay: 0s;
}
.section--next-project .section-bg-container {
  padding: 0;
  max-width: 1200px;
  width: 80vw;
  margin: auto;
  text-align: center;
}

.next-project-label {
  font-size: 2.2rem;
  margin-bottom: 20px;
  font-weight: 500;
}
@media screen and (max-width: 600px) {
  .next-project-label {
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
}

.swup-container {
  transition: 0.75s;
  opacity: 1;
  transform: none;
}

.page-template-palvelut .section--basic {
  transition: opacity 0.5s;
}

html.is-animating .page-template-palvelut .section--basic {
  opacity: 0;
  transition: opacity 0s;
}

html.is-animating .swup-container {
  opacity: 0;
  transform: translate3d(0, 40px, 0);
}

html.is-animating .site-footer {
  opacity: 0;
  transition: 0.75s;
  transform: translate3d(0, 40px, 0);
}

.simpleParallax {
  height: 100%;
}

.home-hero-layout .image-wrap {
  height: 0;
  padding-top: 65%;
}

.b-swiper-slide {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}

.b-swiper-container {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  float: left;
  transition: opacity 0.5s ease, transform 0.5s ease, filter 0.5s;
}

.b-swiper-container .swiper-slide-prev {
  transform: translateY(50%) !important;
  transition: 1.5s;
}

.b-swiper-container.nav-slider {
  width: 20%;
  padding-left: 5px;
}

.b-swiper-container.nav-slider .b-swiper-slide {
  cursor: pointer;
  opacity: 0.4;
  transition: opacity 0.3s ease;
}

.b-swiper-container.nav-slider .b-swiper-slide.b-swiper-slide-active {
  opacity: 1;
}

.b-swiper-container.nav-slider .b-swiper-slide .content {
  width: 100%;
}

.b-swiper-container.nav-slider .b-swiper-slide .content .title {
  font-size: 20px;
}

.b-swiper-container:hover .swiper-button-next, .b-swiper-container:hover .swiper-button-prev {
  transform: translateX(0);
  opacity: 1;
  visibility: visible;
}

.b-swiper-slide {
  overflow: hidden;
}

.b-swiper-slide .slide-bgimg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  background-size: cover;
}

.section--basic .forminator-guttenberg {
  padding: 30px 3vw;
  padding-top: 50px;
  background: white;
  box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
  box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 1px 3px 1px;
  border-radius: 10px;
}

.forminator-guttenberg {
  position: relative;
  margin-bottom: 40px;
  margin-top: 20px;
}
.forminator-guttenberg .forminator-response-message {
  position: absolute !important;
  bottom: 0px;
  left: 0;
  min-height: 80px;
  margin: 0 !important;
  width: 100%;
}
.forminator-guttenberg .forminator-title {
  color: #8a8a8a !important;
  font-size: 2.4rem !important;
  font-size: clamp(1.8rem,3vw,2.4rem) !important;
  font-weight: 600 !important;
}
.forminator-guttenberg .forminator-label {
  font-weight: 500 !important;
  font-family: "sans-medium" !important;
  font-size: 14px !important;
}
.forminator-guttenberg .forminator-input {
  border-radius: 4px !important;
}
.forminator-guttenberg .form-data {
  font-size: 1.2rem;
  margin: 20px 0;
  font-family: "Inter", sans-serif;
}
.forminator-guttenberg .forminator-loading {
  color: black !important;
  background: white !important;
}
.forminator-guttenberg .forminator-error {
  pointer-events: none;
}
.forminator-guttenberg .forminator-button-submit {
  border-radius: 99px !important;
  font-size: 1.8rem !important;
  min-width: 200px;
  padding: 12px 20px !important;
}

.has-extended-bg--white {
  position: relative;
}
@media screen and (max-width: 700px) {
  .has-extended-bg--white .section-inner-container {
    padding: 0;
  }
  .has-extended-bg--white .full-image {
    border-radius: 0;
  }
}

.has-extended-bg--white:before {
  content: "";
  height: 50%;
  width: 100%;
  left: 0;
  bottom: 0;
  background: white;
  position: absolute;
}

.module--rekry-block {
  margin-bottom: 20px;
}
@media screen and (max-width: 500px) {
  .module--rekry-block {
    margin-bottom: 10px;
  }
}
.module--rekry-block .module--rekry-block__inner {
  background: white;
  border-radius: 2.6rem;
  overflow: hidden;
}
@media screen and (max-width: 600px) {
  .module--rekry-block .module--rekry-block__inner {
    border-radius: 1.5rem;
  }
}
.module--rekry-block .-header {
  position: relative;
  padding: 30px 40px;
  background: white;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.module--rekry-block .-header button {
  all: unset;
  display: flex;
  align-items: center;
  justify-content: center;
}
.module--rekry-block .-header button svg {
  width: 50px;
  height: auto;
  border: solid 1px rgba(0,0,0,0);
  border-radius: 999px;
  background: rgba(255,208,90,0.8);
}
@media screen and (max-width: 700px) {
  .module--rekry-block .-header button svg {
    width: 30px;
  }
}
.module--rekry-block .-header:hover {
  background: rgba(255,208,90,0.8);
}
.module--rekry-block .-header:hover button svg {
  transition: transform 0.5s;
  border: solid 1px black;
  background: rgba(255,208,90,0.8);
}
@media screen and (max-width: 1000px) {
  .module--rekry-block .-header {
    padding: 40px 20px;
  }
}
@media screen and (max-width: 700px) {
  .module--rekry-block .-header {
    flex-wrap: wrap;
    padding: 16px 20px;
    padding-bottom: 20px;
  }
}
.module--rekry-block .-header .-heading {
  flex-grow: 2;
}
@media screen and (max-width: 700px) {
  .module--rekry-block .-header .-heading {
    width: calc(100% - 50px);
    padding-right: 10px;
  }
}
.module--rekry-block .-header .-toggle {
  justify-content: flex-end;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 700px) {
  .module--rekry-block .-header .-toggle {
    width: 30px;
    position: absolute;
    right: 10px;
    top: 10px;
  }
}
.module--rekry-block .-header h2 {
  font-size: 3.2rem;
  margin: 0;
}
@media screen and (max-width: 1300px) {
  .module--rekry-block .-header h2 {
    font-size: 1.8rem;
    font-size: clamp(1.8rem, 3vw, 3.2rem);
  }
}
.module--rekry-block .-content-wrapper {
  height: 0;
  overflow: hidden;
  pointer-events: none;
}
.module--rekry-block .-content-wrapper .-inner {
  display: flex;
  flex-wrap: wrap;
  padding: 60px 40px;
  opacity: 0;
  transform: translateY(20px);
}
@media screen and (max-width: 1000px) {
  .module--rekry-block .-content-wrapper .-inner {
    padding: 40px 20px;
  }
}
.module--rekry-block .-content-wrapper .-inner .content--left {
  width: 33.33%;
  padding-right: 5%;
  font-size: 2.6rem;
  font-family: "sans-medium";
}
@media screen and (max-width: 1300px) {
  .module--rekry-block .-content-wrapper .-inner .content--left {
    font-size: 2.2rem;
    padding-right: 3%;
  }
}
@media screen and (max-width: 1200px) {
  .module--rekry-block .-content-wrapper .-inner .content--left {
    font-size: 2rem;
    padding-right: 3%;
  }
}
@media screen and (max-width: 1000px) {
  .module--rekry-block .-content-wrapper .-inner .content--left {
    font-size: 2.2rem;
    line-height: 1.2;
    width: 100%;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 700px) {
  .module--rekry-block .-content-wrapper .-inner .content--left {
    font-size: 1.7rem;
  }
}
.module--rekry-block .-content-wrapper .-inner .content--right {
  width: 66.66%;
}
@media screen and (max-width: 1000px) {
  .module--rekry-block .-content-wrapper .-inner .content--right {
    width: 100%;
  }
}
.module--rekry-block .-icon-wrap {
  position: relative;
  width: 70px;
  margin-right: 60px;
}
@media screen and (max-width: 1000px) {
  .module--rekry-block .-icon-wrap {
    width: 60px;
  }
}
@media screen and (max-width: 700px) {
  .module--rekry-block .-icon-wrap {
    width: 40px;
    margin-bottom: 10px;
  }
}
.module--rekry-block .-icon-wrap:after {
  content: "";
  position: absolute;
  top: 0;
  right: -30px;
  height: 100%;
  width: 1px;
  background: black;
}
@media screen and (max-width: 700px) {
  .module--rekry-block .-icon-wrap:after {
    display: none;
  }
}
.module--rekry-block .-icon-wrap .placeholder-img img {
  width: 100%;
  visibility: hidden;
}
.module--rekry-block .-icon-wrap .lazy-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.module--rekry-block .-icon-wrap .lazy-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.rekry-block--open .-content-wrapper {
  height: auto;
  pointer-events: auto;
}
.rekry-block--open .-content-wrapper .-inner {
  transform: none;
  opacity: 1;
  transition: all 0.5s 0.25s;
}
.rekry-block--open .-header {
  background: #FFA700 !important;
}
.rekry-block--open .-header button svg {
  transform: rotate(135deg);
  border: solid 1px black;
  background: rgba(255,208,90,0.8);
}

.module--rekry-block.animation-element {
  transform: translateY(20px);
  opacity: 0;
}

.module--rekry-block.animation-element.scroll-animation {
  transform: none;
  opacity: 1;
  transition: all 0.5s;
}

.module--icon-element-grid {
  margin-left: -20px;
  margin-right: -20px;
  position: relative;
}
@media screen and (max-width: 700px) {
  .module--icon-element-grid {
    margin-left: -14px;
    margin-right: -14px;
  }
}
.module--icon-element-grid .flx-container {
  display: flex;
  flex-wrap: wrap;
}
.module--icon-element-grid .flx-container .periaatteet-cell {
  width: 50%;
  padding: 20px;
}
@media screen and (max-width: 1000px) {
  .module--icon-element-grid .flx-container .periaatteet-cell {
    width: 100%;
  }
}
@media screen and (max-width: 700px) {
  .module--icon-element-grid .flx-container .periaatteet-cell {
    padding: 14px;
  }
}
.module--icon-element-grid .flx-container .periaatteet-cell .-inner {
  background: white;
  border-radius: 1.5rem;
  overflow: hidden;
  padding: 30px;
  padding-bottom: 50px;
  min-height: 100%;
}
@media screen and (max-width: 700px) {
  .module--icon-element-grid .flx-container .periaatteet-cell .-inner {
    padding: 20px;
  }
}
.module--icon-element-grid .flx-container .periaatteet-cell .-header {
  display: flex;
  align-items: center;
}
.module--icon-element-grid .flx-container .periaatteet-cell .-header h3 {
  margin: 0;
  font-size: 3.2rem;
  line-height: 1;
}
@media screen and (max-width: 1700px) {
  .module--icon-element-grid .flx-container .periaatteet-cell .-header h3 {
    font-size: 1.8vw;
    font-size: clamp(1.8rem, 2.8vw, 3rem);
  }
}
.module--icon-element-grid .flx-container .periaatteet-cell .-header .-icon {
  margin-right: 20px;
  width: 80px;
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 700px) {
  .module--icon-element-grid .flx-container .periaatteet-cell .-header .-icon {
    width: 50px;
    height: 50px;
    margin-right: 10px;
  }
}
.module--icon-element-grid .flx-container .periaatteet-cell .-header .-icon svg {
  width: 100%;
  height: auto;
}
.module--icon-element-grid .flx-container .periaatteet-cell .-content {
  margin-top: 20px;
  padding-top: 30px;
  border-top: solid 1px rgba(51,51,51,0.30196);
}
@media screen and (max-width: 700px) {
  .module--icon-element-grid .flx-container .periaatteet-cell .-content {
    padding-top: 20px;
  }
}
.module--icon-element-grid .flx-container .palvelut-cell {
  width: 50%;
  padding: 20px;
}
@media screen and (max-width: 1000px) {
  .module--icon-element-grid .flx-container .palvelut-cell {
    width: 100%;
  }
}
@media screen and (max-width: 700px) {
  .module--icon-element-grid .flx-container .palvelut-cell {
    padding: 14px;
  }
}
.module--icon-element-grid .flx-container .palvelut-cell .-inner {
  background: white;
  border-radius: 1.5rem;
  overflow: hidden;
  padding: 30px;
  padding-bottom: 50px;
}
@media screen and (max-width: 700px) {
  .module--icon-element-grid .flx-container .palvelut-cell .-inner {
    padding: 20px;
  }
}
.module--icon-element-grid .flx-container .palvelut-cell .-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-bottom: 10px;
}
.module--icon-element-grid .flx-container .palvelut-cell .-header h3 {
  margin: 0;
  font-size: 4.2rem;
  line-height: 1;
}
@media screen and (max-width: 1800px) {
  .module--icon-element-grid .flx-container .palvelut-cell .-header h3 {
    font-size: 3.5vw;
    font-size: clamp(2.8rem, 3.3vw, 4.2rem);
  }
}
.module--icon-element-grid .flx-container .palvelut-cell .-header .-icon {
  margin-right: 20px;
  width: 80px;
  margin-bottom: 20px;
}
@media screen and (max-width: 700px) {
  .module--icon-element-grid .flx-container .palvelut-cell .-header .-icon {
    width: 50px;
    margin-right: 10px;
  }
}
.module--icon-element-grid .flx-container .palvelut-cell .-header .-icon svg {
  width: 100%;
  height: auto;
}
.module--icon-element-grid .flx-container .palvelut-cell .-content {
  margin-top: 20px;
  padding-top: 30px;
  border-top: solid 1px rgba(51,51,51,0.30196);
}
@media screen and (max-width: 700px) {
  .module--icon-element-grid .flx-container .palvelut-cell .-content {
    padding-top: 20px;
  }
}
.module--icon-element-grid .flx-container .palvelut-cell.animation-element {
  transform: scale(0.9) translateY(20px);
  opacity: 0;
}
.module--icon-element-grid .flx-container .palvelut-cell.animation-element.scroll-animation {
  opacity: 1;
  transform: none;
  transition: all 0.75s;
}
.module--icon-element-grid .flx-container .palvelut-cell:nth-of-type(1) {
  transition-delay: 0.25s !important;
}
.module--icon-element-grid .flx-container .palvelut-cell:nth-of-type(2) {
  transition-delay: 0.5s !important;
}
.module--icon-element-grid .flx-container .palvelut-cell:nth-of-type(3) {
  transition-delay: 0.75s !important;
}
.module--icon-element-grid .flx-container .palvelut-cell:nth-of-type(4) {
  transition-delay: 1s !important;
}
.module--icon-element-grid .flx-container .perus-cell {
  width: 50%;
  padding: 20px;
}
@media screen and (max-width: 1000px) {
  .module--icon-element-grid .flx-container .perus-cell {
    width: 100%;
  }
}
@media screen and (max-width: 700px) {
  .module--icon-element-grid .flx-container .perus-cell {
    padding: 14px;
  }
}
.module--icon-element-grid .flx-container .perus-cell .-inner {
  background: white;
  border-radius: 1.5rem;
  overflow: hidden;
  padding: 30px;
}
@media screen and (max-width: 700px) {
  .module--icon-element-grid .flx-container .perus-cell .-inner {
    padding: 20px;
  }
}
.module--icon-element-grid .flx-container .perus-cell .-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-bottom: 10px;
}
.module--icon-element-grid .flx-container .perus-cell .-header h3 {
  margin: 0;
  font-size: 4.2rem;
  line-height: 1;
}
@media screen and (max-width: 1800px) {
  .module--icon-element-grid .flx-container .perus-cell .-header h3 {
    font-size: 3.5vw;
    font-size: clamp(2.8rem, 3.3vw, 4.2rem);
  }
}
.module--icon-element-grid .flx-container .perus-cell .-header .-icon {
  margin-right: 20px;
  width: 80px;
  margin-bottom: 20px;
}
@media screen and (max-width: 700px) {
  .module--icon-element-grid .flx-container .perus-cell .-header .-icon {
    width: 50px;
    margin-right: 10px;
  }
}
.module--icon-element-grid .flx-container .perus-cell .-header .-icon svg {
  width: 100%;
  height: auto;
}
.module--icon-element-grid .flx-container .perus-cell .-content {
  padding: 20px 10px;
}
@media screen and (max-width: 700px) {
  .module--icon-element-grid .flx-container .perus-cell .-content {
    padding: 0;
  }
}

.single-asiantuntijat {
  background: grey;
}
.single-asiantuntijat .section-theme--light {
  background: grey;
}

.swup-wrapper {
  background: white;
}

.module--modal-content {
  position: relative;
}
@media screen and (max-width: 600px) {
  .module--modal-content .flx-container {
    display: block;
  }
}
.module--modal-content .avatar-contact-person__image {
  width: 50%;
  min-width: 50%;
}
@media screen and (max-width: 1000px) {
  .module--modal-content .avatar-contact-person__image {
    width: 33.33%;
    min-width: 33.33%;
  }
}
@media screen and (max-width: 600px) {
  .module--modal-content .avatar-contact-person__image {
    width: 100%;
    min-width: 100%;
    margin-bottom: 20px;
  }
}
.module--modal-content .avatar-contact-person__image .image-aspect-box {
  overflow: hidden;
}
.module--modal-content .avatar-contact-person__content {
  padding-left: 40px;
  margin-top: 0;
  justify-content: flex-start;
  flex-grow: 2;
  width: auto;
}
@media screen and (max-width: 1000px) {
  .module--modal-content .avatar-contact-person__content {
    padding-left: 30px;
  }
}
@media screen and (max-width: 600px) {
  .module--modal-content .avatar-contact-person__content {
    padding-left: 0;
  }
}
.module--modal-content .avatar-contact-person__content .-name {
  margin-bottom: 0.5em;
}
.module--modal-content .avatar-contact-person__content .-title {
  margin-bottom: 1em;
}
.module--modal-content .avatar-contact-person__content p {
  font-size: 2.2rem;
}
.module--modal-content .avatar-contact-person__content a {
  font-size: 1.6rem;
  display: inherit;
  margin-bottom: -2px;
}
.module--modal-content .contact-person__notification {
  margin-top: 30px;
}
.module--modal-content .contact-person__notification p {
  font-size: 1.7rem;
  line-height: 1.3;
  color: #6d6d6d;
}
.module--modal-content .person-profile {
  margin-top: 30px;
}

.module--yhteystiedot-prime .flx-container--yhteys {
  display: flex;
  flex-wrap: wrap;
}
.module--yhteystiedot-prime .prime-yhteystiedot {
  width: 33.33%;
  padding-right: 20px;
  margin-bottom: 80px;
}
@media screen and (max-width: 1300px) {
  .module--yhteystiedot-prime .prime-yhteystiedot {
    width: 100%;
    margin-bottom: 60px;
  }
}
.module--yhteystiedot-prime .prime-yhteystiedot h3, .module--yhteystiedot-prime .prime-yhteystiedot h4, .module--yhteystiedot-prime .prime-yhteystiedot p {
  font-family: "sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}
.module--yhteystiedot-prime .prime-yhteystiedot h3 strong, .module--yhteystiedot-prime .prime-yhteystiedot h4 strong, .module--yhteystiedot-prime .prime-yhteystiedot p strong {
  font-family: "sans-medium";
}
@media screen and (max-width: 1600px) {
  .module--yhteystiedot-prime .prime-yhteystiedot h3 {
    font-size: 3.4rem;
  }
}
@media screen and (max-width: 1600px) {
  .module--yhteystiedot-prime .prime-yhteystiedot h4 {
    font-size: 2rem;
  }
}
.module--yhteystiedot-prime .some-linkit {
  margin-bottom: 30px;
}
.module--yhteystiedot-prime .some-linkit h3, .module--yhteystiedot-prime .some-linkit h4, .module--yhteystiedot-prime .some-linkit p {
  margin-bottom: 0;
}

.contact-page-persons--primary {
  flex-grow: 2;
}
.contact-page-persons--primary .module--contact-info {
  justify-content: flex-start;
}
@media only screen and (min-width: 900.11px) {
  .contact-page-persons--primary .avatar-contact-person {
    padding-left: 0;
    padding-top: 0;
    margin-bottom: 10px;
  }
  .contact-page-persons--primary .avatar-contact-person .flx-container {
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: row;
  }
  .contact-page-persons--primary .avatar-contact-person__content {
    text-align: left;
    padding-left: 20px;
    margin-top: 10px;
  }
  .contact-page-persons--primary .avatar-contact-person__image {
    max-width: 50%;
    width: 240px;
    border-radius: 1.5rem;
    overflow: hidden;
  }
  .contact-page-persons--primary .avatar-contact-person__image div {
    border-radius: 0px;
  }
  .contact-page-persons--primary .avatar-contact-person {
    min-width: 50%;
    width: 50%;
  }
  .contact-page-persons--primary .avatar-contact-person .-name {
    font-size: 2rem;
  }
  .contact-page-persons--primary .avatar-contact-person .-title {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 900px) {
  .contact-page-persons--primary .avatar-contact-person {
    padding-left: 0;
    padding-top: 0;
    margin-bottom: 20px;
  }
  .contact-page-persons--primary .avatar-contact-person .flx-container {
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: row;
  }
  .contact-page-persons--primary .avatar-contact-person__content {
    text-align: left;
    padding-left: 20px;
    margin-top: 0px;
  }
  .contact-page-persons--primary .avatar-contact-person__image {
    max-width: 25%;
    width: 240px;
    border-radius: 1.5rem;
    overflow: hidden;
  }
  .contact-page-persons--primary .avatar-contact-person__image div {
    border-radius: 0px;
  }
  .contact-page-persons--primary .avatar-contact-person {
    min-width: 100%;
    width: 100%;
  }
  .contact-page-persons--primary .avatar-contact-person .-name {
    font-size: 2rem;
  }
  .contact-page-persons--primary .avatar-contact-person .-title {
    font-size: 1.8rem;
  }
  .contact-page-persons--primary .avatar-contact-person .-links {
    margin-top: -20px;
  }
}

.module--prime-form .flx-container {
  display: flex;
}
@media screen and (max-width: 1100px) {
  .module--prime-form .flx-container {
    flex-direction: column;
    padding: 0 8vw;
  }
}
@media screen and (max-width: 700px) {
  .module--prime-form .flx-container {
    flex-direction: column;
    padding: 0;
  }
}
.module--prime-form .editor-cell--left {
  width: 50%;
  max-width: 50%;
}
@media screen and (max-width: 1100px) {
  .module--prime-form .editor-cell--left {
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin-bottom: 30px;
  }
}
.module--prime-form .editor-cell--right {
  flex-grow: 2;
  padding-left: 3vw;
}
@media screen and (max-width: 1100px) {
  .module--prime-form .editor-cell--right {
    width: 100%;
    max-width: 100%;
    padding: 0;
  }
}

.has-relative-btn .btn--hide-modal {
  position: relative;
  top: 0;
  left: 0;
}
.has-relative-btn .btn--hide-modal span {
  position: absolute;
  white-space: nowrap;
  margin-left: 160px;
}
@media screen and (max-width: 700px) {
  .has-relative-btn .btn--hide-modal span {
    margin-left: 150px;
  }
}

.avatar-contact-person.has-hover-zoom .avatar-contact-person__image img {
  transition: transform 0.5s;
}
.avatar-contact-person.has-hover-zoom a:hover .avatar-contact-person__image img {
  transform: scale(1.05);
}

.center-heading {
  text-align: center;
  margin-bottom: 80px;
}
@media screen and (max-width: 600px) {
  .center-heading {
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 600px) {
  .home-cta {
    margin-bottom: 0;
  }
}
.home-cta a {
  transition: color 0.5s;
}
.home-cta a:hover {
  color: #008C9F;
  transition: color 0.5s;
}

.module--project-showcase {
  margin: 0;
  padding: 0;
  max-width: 1200px;
  margin: auto;
}
@media screen and (max-width: 1560px) {
  .module--project-showcase {
    padding: 0;
    max-width: 1000px;
    margin: auto;
  }
}

.home-showcase-elem {
  margin-bottom: 140px;
}
@media screen and (max-width: 1000px) {
  .home-showcase-elem {
    margin-bottom: 80px;
  }
}
@media screen and (max-width: 500px) {
  .home-showcase-elem {
    margin-bottom: 40px;
  }
}
.home-showcase-elem .grid-item-inner {
  display: flex;
}
@media screen and (max-width: 1000px) {
  .home-showcase-elem .grid-item-inner {
    display: block;
  }
}
.home-showcase-elem .xtra--loader-image {
  width: calc(50% + 40px);
}
@media screen and (max-width: 1000px) {
  .home-showcase-elem .xtra--loader-image {
    width: calc(75%);
  }
}
@media screen and (max-width: 700px) {
  .home-showcase-elem .xtra--loader-image {
    width: 100%;
    margin: 0 !important;
  }
}
.home-showcase-elem .grid--meta {
  flex-grow: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (max-width: 1560px) {
  .home-showcase-elem .grid--meta {
    padding: 0 30px;
  }
}
@media screen and (max-width: 1000px) {
  .home-showcase-elem .grid--meta {
    padding: 0 !important;
    margin-top: 0;
  }
}
.home-showcase-elem .grid--meta .grid--cat {
  font-family: "ivypresto-display", serif;
  font-size: 1.9rem;
  font-style: italic;
  margin-top: 0;
  margin-bottom: 14px;
  font-weight: 400%;
}
@media screen and (max-width: 1000px) {
  .home-showcase-elem .grid--meta .grid--cat {
    margin: 14px 0 8px;
  }
}

.home-showcase-elem:last-of-type {
  margin-bottom: 80px;
}

.home-showcase-elem:nth-of-type(even) .xtra--loader-image {
  order: 2;
}
@media screen and (max-width: 1000px) {
  .home-showcase-elem:nth-of-type(even) .xtra--loader-image {
    margin-left: 25%;
  }
}
.home-showcase-elem:nth-of-type(even) .grid--meta {
  order: 1;
  text-align: right;
}

.home-showcase-elem:nth-of-type(even) .grid--meta {
  padding-left: 0;
}

.home-showcase-elem:nth-of-type(odd) .grid--meta {
  padding-right: 0;
}

.meta--prod-name {
  font-size: 4.6rem;
  font-weight: 700;
  line-height: 1;
  margin: 0;
}

.grid--client-name {
  font-size: 4.6rem;
  line-height: 1;
  margin: 0;
}

.grid--meta {
  padding: 0 60px;
  position: relative;
}
.grid--meta .grid--cat {
  margin: 14px 0 8px;
  display: block;
  font-family: "ivypresto-display", serif;
  font-size: 1.9rem;
  font-style: italic;
}
.grid--meta .meta--prod-name {
  font-size: 4.6rem;
  font-size: clamp(3.2rem, 3.6vw, 4.6rem);
  font-weight: 700;
  line-height: 1;
  margin: 0;
  display: block;
}
.grid--meta .grid--client-name {
  font-size: 4.6rem;
  font-size: clamp(3.2rem, 3.6vw, 4.6rem);
  line-height: 1;
  margin: 0;
}

.grid-item .grid--meta {
  padding: 0;
}

.js--grid {
  transition: opacity 0.5s;
}

.grid--loading {
  opacity: 0;
  transition: opacity 0.5s;
}

.grid---home {
  position: relative;
  margin-left: -10px;
  margin-right: -10px;
}

.grid---home {
  position: relative;
  box-sizing: border-box;
  list-style-type: none;
  list-style: none;
  margin-bottom: 10px;
}

.grid---home .grid-sizer {
  width: 25%;
  box-sizing: border-box;
}

.grid---home .grid-item {
  overflow: hidden;
  padding: 0 10px;
  width: 25%;
  box-sizing: border-box;
  margin-bottom: 26px;
}

.grid---work {
  position: relative;
  margin-left: -10px;
  margin-right: -10px;
}

.grid---work {
  position: relative;
  box-sizing: border-box;
  list-style-type: none;
  list-style: none;
  margin-bottom: 10px;
}

.grid---work .grid-sizer {
  width: 50%;
  box-sizing: border-box;
}

.grid---work .grid-item {
  padding: 0 30px;
  width: 50%;
  box-sizing: border-box;
  margin-bottom: 60px;
}

@media screen and (max-width: 1600px) {
  .grid---work .grid-sizer {
    width: 50%;
  }

  .grid---work .grid-item {
    padding: 0 20px;
    width: 50%;
  }
}
@media screen and (max-width: 1200px) {
  .grid---work .grid-item {
    padding: 0 10px;
    width: 50%;
  }
}
@media screen and (max-width: 650px) {
  .grid---work .grid-sizer {
    width: 100%;
  }

  .grid---work .grid-item {
    width: 100%;
  }
}
@media screen and (max-width: 1600px) {
  .grid---home .grid-sizer {
    width: 33.33%;
  }

  .grid---home .grid-item {
    width: 33.33%;
  }
}
@media screen and (max-width: 1200px) {
  .grid---home .grid-sizer {
    width: 50%;
  }

  .grid---home .grid-item {
    width: 50%;
  }
}
@media screen and (max-width: 650px) {
  .grid---home .grid-sizer {
    width: 100%;
  }

  .grid---home .grid-item {
    width: 100%;
  }
}
.grid--meta {
  transition: background 0.3s;
}

img.--full-size {
  transition: transform 0.3s !important;
}

.grid-item:hover img.--full-size {
  transition: transform 0.3s;
  transform: scale(1.05) !important;
}

.section--work-grid .section-inner-container {
  padding-right: 0;
}

.section--work-grid {
  min-height: 80vh;
}

.xtra--loader-image {
  position: relative;
  overflow: hidden;
  display: flex;
}

.xtra--loader-image .--blur-size {
  width: 100%;
  min-width: 100%;
  max-width: 100%;
}

.--full-size {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
}

.home--hero-iiris {
  padding: 120px 0;
}
@media screen and (max-width: 1600px) {
  .home--hero-iiris {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media screen and (max-width: 1000px) {
  .home--hero-iiris {
    padding-top: 80px;
    padding-bottom: 40px;
  }
}
.home--hero-iiris h1 {
  font-style: italic;
  font-size: 100rem;
  font-size: 5.8vw;
  font-size: clamp(3rem, 6vw, 10rem);
}
@media screen and (max-width: 1000px) {
  .home--hero-iiris h1 {
    font-size: clamp(3rem, 9vw, 10rem);
  }
}

.module--b-work {
  display: flex;
  width: 100%;
}

.b-work__sidebar {
  min-width: 280px;
  max-width: 280px;
}

.sidebar__inner {
  position: sticky;
  top: 100px;
  margin-bottom: 26px;
}

.b-work__grid {
  flex-grow: 2;
}

.sidebar__buttons {
  display: flex;
  flex-direction: column;
}
.sidebar__buttons .btn--basic {
  display: inline-flex;
  max-width: 240px;
  margin-bottom: 6px;
  font-size: clamp(3.4rem, 2.6vw, 3.8rem);
  font-weight: 400;
  padding: 0;
  background: transparent;
  text-align: left;
  border: none;
}

@media screen and (max-width: 1400px) {
  .b-work__sidebar {
    margin-right: 0;
  }

  .sidebar__buttons {
    max-width: 200px;
  }
}
@media screen and (max-width: 1200px) {
  .module--b-work {
    display: block;
  }

  .b-work__sidebar {
    min-width: 240px;
    max-width: 100%;
    width: 100%;
  }

  .sidebar__buttons {
    max-width: 100%;
  }

  .sidebar__inner {
    margin-left: -20px;
    margin-right: -20px;
  }

  .section--work-grid .section-inner-container {
    padding-right: 0;
    padding-left: 0;
  }

  .sidebar__tags-wrap {
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
  }
  .sidebar__tags-wrap .tag-group {
    width: 100%;
    max-width: 100%;
    margin-bottom: 20px;
  }

  .sidebar__buttons {
    flex-direction: row;
    width: 100%;
    max-width: 100%;
    margin-bottom: 0px;
  }
  .sidebar__buttons .btn--basic {
    margin: 0 20px;
    margin-bottom: 20px;
    min-width: 10px;
    min-height: 40px;
    font-size: 2.4rem;
    font-size: 3vw;
  }
}
@media screen and (max-width: 800px) {
  .sidebar__buttons {
    flex-direction: row;
    width: 100%;
    max-width: 100%;
    margin-bottom: 30px;
  }
  .sidebar__buttons .btn--basic {
    margin: 0 20px;
    margin-bottom: 20px;
    min-width: 10px;
    min-height: 40px;
    font-size: 2.4rem;
    font-size: 3vw;
    min-height: 0;
  }
}
@media screen and (max-width: 600px) {
  .sidebar__inner {
    margin-left: 0;
    margin-right: 0;
  }

  .sidebar__buttons {
    flex-direction: row;
    width: 100%;
    max-width: 100%;
    margin-bottom: 30px;
    flex-wrap: wrap;
  }
  .sidebar__buttons .btn--basic {
    margin-left: 0;
    margin-right: 6px;
    white-space: nowrap;
    font-size: 2rem;
    padding: 0;
    min-width: 50vw;
    margin-bottom: 0;
    font-size: 6vw;
    font-size: clamp(3rem, 9vw, 4.2rem);
  }

  .sidebar__tags-wrap {
    padding: 0;
  }
}
@media screen and (max-width: 400px) {
  .sidebar__buttons {
    flex-direction: row;
    justify-content: space-between;
  }
  .sidebar__buttons .btn--basic {
    margin: 0;
  }
}
.btn--film.S-active {
  color: #008C9F;
}

.no-touch-device .btn--film:hover {
  color: #008C9F;
}

.no-touch-device .btn--all:hover {
  color: #008C9F;
}

.section--work-grid, .sidebar__tags-wrap {
  transition: all 0.3s;
}

.S-animating--filters .section--work-grid {
  opacity: 0;
}

.S-animating--filters .sidebar__tags-wrap {
  opacity: 0;
}

.S-disabled__item {
  display: none;
}

.tag-group {
  border-top: solid 1px rgba(0,0,0,0.30196);
  margin-top: 20px;
  padding-top: 30px;
  max-width: 300px;
}

.tag-group__button {
  border: solid 1px rgba(0,0,0,0.30196);
  background: none;
  font-size: 12px;
  padding: 10px;
  border-radius: 4px;
  margin-right: 4px;
  margin-bottom: 4px;
  text-transform: uppercase;
  color: black;
  letter-spacing: 0.02em;
}

.tag-group__button.S-active {
  color: black;
  border: solid 1px black;
}

.sidebar__tags-wrap.keep-open {
  opacity: 1 !important;
}

.module--friends > div, .module--header > div {
  display: flex;
  flex-wrap: wrap;
}

.item--friends, .item--header {
  width: 50%;
  padding-top: 60px;
  padding-bottom: 60px;
}
@media screen and (max-width: 1000px) {
  .item--friends, .item--header {
    width: 100%;
  }
}
.item--friends .-inner, .item--header .-inner {
  position: relative;
  width: 100%;
}

.item--friends {
  min-height: 100vh;
}
@media screen and (max-width: 1000px) {
  .item--friends {
    min-height: auto;
    padding-bottom: 120px;
  }
}
@media screen and (max-width: 1000px) and (max-width: 600px) {
  .item--friends {
    padding-bottom: 80px;
  }
}

.item--header {
  min-height: 50vh;
}

.directors-list, .left-header {
  background: #C7BBE3;
  padding-left: calc(50vw - 1000px);
}

.photo-list, .right-header {
  background: #FFA700;
  padding-right: calc(50vw - 1000px);
}

.item--friends .-label {
  margin-bottom: 60px;
  font-size: 2.6rem;
}
@media screen and (max-width: 1000px) {
  .item--friends .-label {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 600px) {
  .item--friends .-label {
    margin-bottom: 30px;
  }
}
.item--friends h4 {
  font-weight: 400;
  font-size: 72px;
  padding: 6px 0;
  margin: 0;
}

.person-list-item {
  border-bottom: solid 2px black;
}

.person-list-item:nth-of-type(odd) h4 {
  text-align: right;
}

.directors-list .person-list-item:hover {
  background: black;
}
.directors-list .person-list-item:hover h4 {
  color: #C7BBE3;
}

.photo-list .person-list-item:hover {
  background: black;
}
.photo-list .person-list-item:hover h4 {
  color: #FFA700;
}

.person-list-item:nth-of-type(odd):hover h4 {
  transform: translateX(-20px);
  transition: transform 0.3s;
}

.person-list-item:nth-of-type(even):hover h4 {
  transform: translateX(20px);
  transition: transform 0.3s;
}

.single-friends, .single-commercials, .pjax-view {
  display: block;
  position: relative;
  z-index: 2;
}

.section--person-info {
  margin-top: 100px;
  margin-bottom: 100px;
}
@media only screen and (max-width: 1000px) {
  .section--person-info {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width: 700px) {
  .section--person-info {
    margin-bottom: 30px;
    margin-top: 40px;
  }
}

.cell_txt-content h2 {
  font-size: clamp(2.8rem, 7.3vw, 12rem);
}

p a, li a {
  color: #514682;
  font-family: "Chivo Mono";
  font-weight: 500;
}

.module--split-content .flx-container {
  justify-content: space-between;
}
@media screen and (min-width: 1000.11px) {
  .module--split-content .cell {
    padding: 0;
    width: calc(50% - 40px);
    min-width: 0;
    min-width: 0;
  }
}

.overlay-view--active.S-has--modal .section--modal {
  transform: translate3d(0, 100%, 0);
}

.modal-smoke {
  display: none;
}

.css-scroll-modal {
  background: #EBE4CF;
  background: linear-gradient(30deg, #ffc9e4 0%, #ccf8f6 36%, #fff3cc 64%, #ffc9e4 100%);
  background: var(--main-bg-color);
}

.overlay-view--active .css-scroll-modal {
  display: none;
}

.single .pjax-container--main {
  opacity: 1;
}

.-desktop-nav {
  transition: 0.5s;
}

@media screen and (max-width: 1000px) {
  .header-logo, .nav-cta, .mobile-nav-trigger-box {
    opacity: 1;
    transition: 0.5s;
  }
}
.overlay-view--active .-desktop-nav, .modal-transitioning .-desktop-nav {
  opacity: 0;
  transition: 0.5s;
  pointer-events: none;
}
@media screen and (max-width: 1000px) {
  .overlay-view--active .header-logo, .overlay-view--active .nav-cta, .overlay-view--active .mobile-nav-trigger, .modal-transitioning .header-logo, .modal-transitioning .nav-cta, .modal-transitioning .mobile-nav-trigger {
    opacity: 0 !important;
    transition: 0.5s;
    pointer-events: none;
  }
}

.modal-transitioning .header-logo {
  opacity: 0;
  transition: 0.5s;
}

.header-logo {
  transition: 0.5s;
}

.keep-nav-hidden .-desktop-nav {
  opacity: 0 !important;
  transition: 0.5s;
  pointer-events: none;
}
@media screen and (max-width: 1000px) {
  .keep-nav-hidden .header-logo, .keep-nav-hidden .nav-cta, .keep-nav-hidden .mobile-nav-trigger {
    opacity: 0 !important;
    transition: 0.5s;
    pointer-events: none;
  }
}

.pjax-container--main {
  opacity: 0;
  transition: opacity 0.5s;
}

.overlay-view--active .pjax-container--main {
  opacity: 1;
  transition: opacity 0.5s;
}

.close-project-box {
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) scale(1);
}
@media screen and (max-width: 1000px) {
  .close-project-box {
    right: auto;
    left: 0;
    width: 100%;
    text-align: center;
  }
}
@media screen and (max-width: 600px) {
  .close-project-box {
    margin-top: 40px;
  }
}

.page-template-etusivu .js--hide-modal__btn:after {
  content: "Home";
}

.page-template-friends .js--hide-modal__btn:after {
  content: "Friends";
}

.page-template-work .js--hide-modal__btn:after {
  content: "Work";
}

.nav-cta button {
  font-family: "new-spirit-condensed", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  margin: 0;
  background: #FFA700;
  padding: 8px 14px;
  border-radius: 999px;
  transition: all 0.3s;
  -webkit-appearance: none;
  border: none;
  font-size: 2.6rem;
  cursor: pointer;
}
@media screen and (max-width: 600px) {
  .nav-cta button {
    font-size: 1.6rem;
    padding: 6px 9px;
  }
}

.nav-cta button.-mobile {
  display: none;
}

@media screen and (max-width: 1000px) {
  .nav-cta button.-mobile {
    display: block;
  }

  .nav-cta button.-desk {
    display: none;
  }
}
.overlay-view--active .close-project-box {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
  transform: translateY(-50%);
}

.close-project-box--bottom {
  margin-bottom: 100px;
  margin-top: 100px;
  display: flex;
  justify-content: center;
  border-top: solid 1px;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 30px;
}

.single .section--project-bottom {
  display: none;
}

.single .site-footer {
  background: #f9f1d2;
}

.site-footer .module--footer .flx-container {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1200px) {
  .site-footer .module--footer .flx-container {
    display: block;
  }
}

.module--footer__logo {
  width: 50%;
  display: flex;
  align-items: center;
}
.module--footer__logo .-info {
  display: none;
}
.module--footer__logo svg {
  width: 100%;
}

.module--footer__logo h2, .module--footer__logo a {
  line-height: 1;
  margin-bottom: 6px;
  border: none;
  background: none;
  font-size: clamp(2.8rem, 7.3vw, 6.4rem);
}

.module--footer__links {
  display: flex;
  flex-direction: column;
  text-align: right;
}
@media screen and (max-width: 700px) {
  .module--footer__links {
    text-align: left;
    margin-top: 30px;
  }
}
.module--footer__links a, .module--footer__links button {
  line-height: 1;
  margin-bottom: 6px;
  border: none;
  background: none;
  font-size: 7.2rem;
  font-size: clamp(2.8rem, 7.3vw, 6.4rem);
  padding: 0;
  cursor: pointer;
  font-size: clamp(5rem, 5.5vw, 7.2rem);
}
.module--footer__links a:hover, .module--footer__links button:hover {
  text-decoration: underline;
}
@media screen and (max-width: 700px) {
  .module--footer__links a, .module--footer__links button {
    text-align: left;
  }
}

.wp-block-embed.is-type-video, .module--full-image, .txt-block--basic {
  margin-bottom: 16px;
}
@media only screen and (min-width: 500px) {
  .wp-block-embed.is-type-video, .module--full-image, .txt-block--basic {
    margin-bottom: 16px;
  }
}
@media only screen and (min-width: 700px) {
  .wp-block-embed.is-type-video, .module--full-image, .txt-block--basic {
    margin-bottom: 30px;
  }
}
@media only screen and (min-width: 1100px) {
  .wp-block-embed.is-type-video, .module--full-image, .txt-block--basic {
    margin-bottom: 30px;
  }
}
@media only screen and (min-width: 1400px) {
  .wp-block-embed.is-type-video, .module--full-image, .txt-block--basic {
    margin-bottom: 4vw;
  }
}

.txt-block--basic {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 4vw;
  padding-right: 4vw;
  padding-top: 5vw;
  padding-bottom: 5vw;
}
@media only screen and (min-width: 1400px) {
  .txt-block--basic {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.txt-block--basic h3, .txt-block--basic h4, .txt-block--basic h5 {
  font-size: 7.2rem;
  font-size: clamp(2.2rem, 6vw, 7.2rem);
}
.txt-block--basic p:last-of-type {
  margin: 0;
}

.module-double-image__inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.module-double-image__inner .full-image {
  width: calc(50% - 8px);
}
@media only screen and (min-width: 500px) {
  .module-double-image__inner .full-image {
    width: calc(50% - 8px);
  }
}
@media only screen and (min-width: 700px) {
  .module-double-image__inner .full-image {
    width: calc(50% - 15px);
  }
}
@media only screen and (min-width: 1100px) {
  .module-double-image__inner .full-image {
    width: calc(50% - 15px);
  }
}
@media only screen and (min-width: 1400px) {
  .module-double-image__inner .full-image {
    width: calc(50% - 2vw);
  }
}

.double-bottom .module-double-image__inner {
  align-items: flex-end;
}

.double-center .module-double-image__inner {
  align-items: center;
}

.double-switched .full-image:first-of-type {
  order: 2;
}

.module--film-with-cover {
  position: relative;
}
.module--film-with-cover .-cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 4;
}
.module--film-with-cover .-cover img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.module--film-with-cover .-cover button {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 9;
  transform: translate(-50%, -50%);
  background: #ffffff;
  color: black;
  box-shadow: none;
  font-family: "Inter Tight", sans-serif;
  font-weight: 500;
  cursor: pointer;
  padding: 10px 40px;
  font-size: clamp(2rem, 2.5vw, 4rem);
}

.vimeo-active .-cover {
  opacity: 0;
  transition: all 1s;
  visibility: hidden;
}

.header-svg-txt {
  transition: all 0.3s;
}

.header-svg-egg {
  transition: all 0.75s;
}

.headroom--unpinned .header-svg-txt {
  opacity: 0;
  transform: translateY(6px);
  transform-origin: center;
}
.headroom--unpinned .header-svg-egg {
  transform: translateY(-36px);
  transform-origin: bottom center;
}

.placeholder-img img {
  opacity: 0;
}

.-contact-close {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  min-height: 80px;
  align-items: center;
  justify-content: center;
  display: flex;
  z-index: 2;
}
.-contact-close button {
  margin-left: 8px;
  background: #FFA700;
  font-size: 1.7rem;
  padding: 8px 14px;
  border-radius: 999px;
  transition: all 0.3s;
  -webkit-appearance: none;
  border: none;
  font-size: 2.6rem;
  cursor: pointer;
}

.module--contact-modal {
  position: fixed;
  width: 50%;
  height: 100vh;
  transition: cubic-bezier(0.7, 0, 0.3, 1) 0.7s 0.1s;
  top: 0;
  right: 0;
  z-index: 999;
  background: #514682;
  color: white;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 1400px) {
  .module--contact-modal {
    max-width: 600px;
  }
}
@media only screen and (max-width: 1000px) {
  .module--contact-modal {
    width: 100%;
  }
}
@media only screen and (max-width: 500px) {
  .module--contact-modal {
    width: 100%;
  }
}

.S--contact-not-active .module--contact-modal {
  transform: translate3d(101%, 0, 0);
}
@media only screen and (max-width: 1000px) {
  .S--contact-not-active .module--contact-modal {
    transform: translate3d(0, 101%, 0);
  }
}

.-contact-content {
  flex-grow: 2;
  display: flex;
  align-items: center;
  justify-content: center;
}

.module--contact-modal {
  text-align: center;
}
.module--contact-modal .-contact-content {
  padding-top: 100px;
  padding-bottom: 60px;
}
.module--contact-modal .-contact-content .-item {
  margin-bottom: 40px;
}
.module--contact-modal .-contact-content .-item > div {
  display: flex;
  flex-direction: column;
  text-align: center;
  align-items: center;
  justify-content: center;
}
.module--contact-modal .-contact-content .-item > div h2 {
  margin-bottom: 0;
}
.module--contact-modal .-contact-content a {
  color: white;
  display: inline-flex;
}

.-contact-logo svg {
  width: 100%;
  fill: white;
}

.btn--purple {
  background: #C7BBE3;
}

.btn--grid {
  min-width: 100%;
  min-width: 100%;
  min-height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 5rem;
}

.-desktop-nav a:first-of-type {
  padding-left: 0;
}

.module--exh {
  margin-bottom: 60px;
}
@media only screen and (max-width: 1000px) {
  .module--exh {
    display: block;
    max-width: 550px;
    margin: auto;
    margin-bottom: 60px;
  }
}
.module--exh .flx-container {
  display: flex;
}
@media only screen and (max-width: 1000px) {
  .module--exh .flx-container {
    display: block;
  }
}
.module--exh .exh__image {
  width: 600px;
  min-width: 400px;
}
@media only screen and (max-width: 1000px) {
  .module--exh .exh__image {
    width: 100%;
    min-width: auto;
  }
}
.module--exh .exh__image .image-wrap {
  position: relative;
  width: 100%;
}
.module--exh .exh__image .image-wrap .placeholder-img {
  width: 100%;
}
.module--exh .exh__image .image-wrap .placeholder-img img {
  width: 100%;
}
.module--exh .exh__content {
  padding-left: 60px;
  display: flex;
  align-items: center;
  max-width: 700px;
  flex-grow: 2;
}
@media only screen and (max-width: 1000px) {
  .module--exh .exh__content {
    padding-left: 0px;
    padding-top: 20px;
  }
}
.module--exh .exh__content .-header {
  font-family: "Inter Tight", sans-serif;
  font-weight: 500;
  font-size: 1.6rem;
  margin-top: 0;
  margin: 14px 0 8px;
  margin-top: 0px;
  display: block;
  font-family: "ivypresto-display", serif;
  font-size: 1.9rem;
  font-style: italic;
}
.module--exh .exh__content .-body {
  font-size: 2rem;
  font-size: clamp(1.6rem, 3.6vw, 2rem);
  font-family: "Inter Tight", sans-serif;
  font-weight: 400;
}
.module--exh .exh__content .-headings {
  font-size: 4.6rem;
  font-size: clamp(3.2rem, 3.6vw, 4.6rem);
  line-height: 1;
  margin: 0;
  display: block;
  display: flex;
  flex-direction: column;
}
.module--exh .exh__content .-headings .-name {
  font-weight: 700;
}
.module--exh .exh__content .-body {
  margin-top: 30px;
  line-height: 1.3;
}
.module--exh .exh__content .-link {
  margin-top: 10px;
  font-weight: 500;
}

@media only screen and (max-width: 1000px) {
  .module--exh:nth-of-type(odd) {
    margin-left: 0;
  }

  .module--exh:nth-of-type(even) {
    margin-right: 0;
  }
}
.site-container {
  background: linear-gradient(178deg, #ffc9e4 0%, #f9f1d2 33%);
  background: linear-gradient(178deg, #ffc9e4 0%, #f9f1d2 16%);
  background: linear-gradient(178deg, #ffc9e4 0%, #f9f1d2 16%, #f9f1d2 82%, #ffc9e4 100%);
}

.home .site-container {
  background: linear-gradient(8deg, #ffc9e4 0%, #ccf8f6 31%, #fff3cc 77%, #ffc9e4 100%);
  background: linear-gradient(176deg, #ffc9e4 0%, #ccf8f6 36%, #fff3cc 64%, #ffc9e4 100%);
}

body {
  background: linear-gradient(176deg, #ffc9e4 0%, #ccf8f6 36%, #fff3cc 64%, #ffc9e4 100%);
}

.page-id-24427 .site-container {
  background: linear-gradient(176deg, #ffc9e4 0%, #ccf8f6 36%, #fff3cc 64%, #ffc9e4 100%);
}

.module--project-header {
  text-align: center;
  max-width: 1200px;
  margin: auto;
  margin-top: 80px;
  margin-bottom: 100px;
}
@media only screen and (max-width: 1000px) {
  .module--project-header {
    margin-top: 60px;
    margin-bottom: 40px;
  }
}
.module--project-header span {
  font-family: "Inter Tight", sans-serif;
  font-weight: 500;
  font-size: 1.6rem;
  margin-top: 0;
  margin-bottom: 40px;
  display: block;
}
@media only screen and (max-width: 1000px) {
  .module--project-header span {
    margin-bottom: 20px;
  }
}
.module--project-header h1, .module--project-header h5 {
  font-size: 8rem;
  margin: 0;
  line-height: 1;
}
@media only screen and (max-width: 1000px) {
  .module--project-header h1, .module--project-header h5 {
    font-size: 9vw;
  }
}
.module--project-header h1 {
  font-weight: 700;
}
.module--project-header h5 {
  margin-bottom: 40px;
}

.module--film-with-cover, .wp-block-embed__wrapper, .module--full-image.-single-image {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}

.module--credits-box {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 60px;
  margin-bottom: 40px;
}

.credit-box__inner {
  display: flex;
  width: 100%;
}
@media only screen and (max-width: 1000px) {
  .credit-box__inner {
    display: block;
  }
}
.credit-box__inner .-left {
  width: 25%;
  font-size: 6.4rem;
  min-width: 300px;
  margin-bottom: 30px;
}
@media only screen and (max-width: 1000px) {
  .credit-box__inner .-left {
    margin-bottom: 10px;
  }
}
.credit-box__inner .-left h3 {
  font-size: 6.4rem;
}
@media only screen and (max-width: 1000px) {
  .credit-box__inner .-left h3 {
    font-size: 9vw;
  }
}
.credit-box__inner .-right {
  flex-grow: 2;
}

.item--credit .credit__type {
  font-family: "Inter Tight", sans-serif;
  min-width: 50%;
  font-size: 1.6rem;
  margin-top: 0;
  display: flex;
  align-items: center;
}
.item--credit .credit__name {
  font-size: 2.6rem;
}
@media only screen and (max-width: 1000px) {
  .item--credit .credit__name {
    font-size: 2.2rem;
  }
}

.item--credit {
  display: flex;
  justify-content: space-between;
  border-bottom: solid 1px;
  padding: 10px 0;
}
@media only screen and (max-width: 1000px) {
  .item--credit {
    display: block;
  }
}

.item--credit:first-of-type {
  border-top: solid 1px;
}

.js--hide-modal__btn {
  border: none;
  background: none;
  color: inherit;
  font-size: 6.8rem;
  font-size: clamp(3.6rem, 8vw, 6.8rem);
  cursor: pointer;
}
.js--hide-modal__btn.-top {
  font-size: 4.6rem;
  font-size: clamp(3.6rem, 8vw, 4.6rem);
}

.section--iiris-bio {
  margin-top: 0;
}
.section--iiris-bio p {
  font-size: 2rem;
}
@media only screen and (max-width: 600px) {
  .section--iiris-bio p {
    font-size: 1.6rem;
  }
}

.var--awards, .var--cv, .var--contact {
  font-family: "Inter Tight", sans-serif;
}
.var--awards .credit-box__inner, .var--cv .credit-box__inner, .var--contact .credit-box__inner {
  border-top: solid 1px rgba(0, 0, 0, 0.30196);
  padding-top: 20px;
}
@media only screen and (max-width: 1000px) {
  .var--awards .credit-box__inner, .var--cv .credit-box__inner, .var--contact .credit-box__inner {
    border: none;
    padding-top: 0;
  }
}
.var--awards li, .var--cv li, .var--contact li {
  margin-top: 10px;
  margin-bottom: 0;
  font-weight: 700;
}

.var--cv, .var--contact {
  margin-top: 60px;
}

.item--award {
  padding: 16px 0;
  line-height: 1.2;
  border-bottom: solid 1px rgba(0, 0, 0, 0.30196);
}
.item--award:last-of-type {
  border-bottom: none;
}
.item--award .-type {
  text-transform: uppercase;
}
.item--award .-name span:first-of-type {
  font-weight: 700;
}
.item--award h2 {
  margin: 0;
  font-size: 6.4rem;
  margin-bottom: 20px;
}
.item--award h2 a {
  margin-bottom: 20px;
}
@media only screen and (max-width: 1000px) {
  .item--award h2 {
    font-size: 9vw;
    margin-bottom: 10px;
  }
  .item--award h2 a {
    margin-bottom: 10px;
  }
}

.contact--iiris h2, .contact--iiris a {
  margin-bottom: 0.3em;
}

@media only screen and (max-width: 500px) {
  .home .home--hero-iiris {
    display: none;
  }

  .home .flx-nav {
    display: block;
    padding: 10px;
  }
  .home .center-heading:first-of-type {
    margin-top: 80px;
  }
  .home .center-heading:first-of-type h2 {
    font-size: clamp(3rem, 9vw, 10rem);
    font-style: italic;
  }
  .home .header-logo, .home .header-logo a, .home .header-logo svg {
    height: auto !important;
    width: 100% !important;
  }
  .home .-desktop-nav.flx-container {
    position: relative !important;
    top: -10px !important;
    justify-content: center !important;
  }
  .home .close-project-box {
    margin-top: 0;
  }
}
/*--------------------------------------------------------------
# Global Forms
--------------------------------------------------------------*/
label {
  display: block;
}

fieldset {
  margin-bottom: 30px;
  margin-bottom: var(--gap);
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
input[type=file],
textarea {
  border: 1px solid grey;
  background: transparent;
  color: #000000;
  color: var(--main-text-color);
  width: 100%;
  min-width: 0;
  font-size: inherit;
  transition: all 0.5s;
  padding: 3px 5px;
  display: block;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
input[type=file]:focus,
textarea:focus {
  border: 1px solid #007eac;
  border: 1px solid var(--highlight);
}

.site-container select {
  width: 100%;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20xmlns%3Axlink%3D%27http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%27%20aria-hidden%3D%27true%27%20focusable%3D%27false%27%20width%3D%271em%27%20height%3D%271em%27%20style%3D%27-ms-transform%3A%20rotate%28360deg%29%3B%20-webkit-transform%3A%20rotate%28360deg%29%3B%20transform%3A%20rotate%28360deg%29%3B%27%20preserveAspectRatio%3D%27xMidYMid%20meet%27%20viewBox%3D%270%200%2032%2032%27%3E%3Cpath%20d%3D%27M16%2022L6%2012l1.4-1.4l8.6%208.6l8.6-8.6L26%2012z%27%20fill%3D%27%23000%27%2F%3E%3Crect%20x%3D%270%27%20y%3D%270%27%20width%3D%2732%27%20height%3D%2732%27%20fill%3D%27rgba%280%2C%200%2C%200%2C%200%29%27%20%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat, repeat;
  background-position: right 0.8rem top 50%, 0 0;
  background-size: 1.2em auto, 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 5px 10px;
  font-weight: bold;
  color: black;
  background-color: transparent;
  font-size: inherit;
}
.site-container select option {
  font-weight: normal;
}

input[type=radio],
input[type=checkbox] {
  margin-right: 0.5em;
}

/*--------------------------------------------------------------
# Buttons
--------------------------------------------------------------*/
.btn, .button, input[type=submit] {
  border: 1px solid transparent;
  display: inline-block;
  text-transform: capitalize;
  background: #007eac;
  background: var(--highlight);
  padding: 5px 10px;
  color: white;
  border-radius: 3px;
  transition: all 0.5s;
  cursor: pointer;
  box-shadow: none;
  font-size: inherit;
}
.btn:active, .btn:focus, .button:active, .button:focus, input[type=submit]:active, input[type=submit]:focus {
  color: white;
  background: #007fb0;
  background: var(--highlight-darkened);
  box-shadow: 0 0 0 2px rgba(0, 185, 235, 0.73);
  box-shadow: 0 0 0 2px var(--highlight-alpha);
}
.btn:hover, .button:hover, input[type=submit]:hover {
  color: white;
  background: #007fb0;
  background: var(--highlight-darkened);
}

.btn--o, .button--o {
  border: 1px solid #007eac;
  border: 1px solid var(--highlight);
  color: #007eac;
  color: var(--highlight);
  background: transparent;
}
.btn--o:hover, .btn--o:focus, .button--o:hover, .button--o:focus {
  background: #007eac;
  background: var(--highlight);
  color: white;
}

/*--------------------------------------------------------------
# Input Placeholders
--------------------------------------------------------------*/
::-moz-placeholder {
  color: #cacaca;
  color: var(--grey);
  opacity: 0.7;
  font-family: "ivypresto-display", serif;
  font-family: var(--font);
}
:-ms-input-placeholder {
  color: #cacaca;
  color: var(--grey);
  opacity: 0.7;
  font-family: "ivypresto-display", serif;
  font-family: var(--font);
}
::placeholder {
  color: #cacaca;
  color: var(--grey);
  opacity: 0.7;
  font-family: "ivypresto-display", serif;
  font-family: var(--font);
}

/*--------------------------------------------------------------
# Search form
--------------------------------------------------------------*/
.search-form {
  display: flex;
  font-size: 2rem;
}
.search-form .search-field {
  flex: 1 1 auto;
  padding: 3px 10px 3px 10px;
  border: 1px solid #007eac;
  border: 1px solid var(--highlight);
  border-radius: 3px;
  background: white;
}

/*--------------------------------------------------------------
# Input Icons
--------------------------------------------------------------*/
/*------- input appends and prepends for icons --------*/
/*
 * when adding a button near an input you can make it a prepend or append
 * all prepends and appends go AFTER the input. Never before or :focus wont affect the prepend.
 */
.input-prepend, .input-append {
  transition: all 0.5s;
  background: white;
  z-index: 2;
  color: #cacaca;
  color: var(--subtle-text-color);
  box-shadow: none;
}

.input-append {
  border-radius: 0 3px 3px 0;
  margin-left: -2px;
  order: 1;
  border: 1px solid #007eac;
  border: 1px solid var(--highlight);
  border-left: 0;
}

.input-prepend {
  border-radius: 3px 0 0 3px;
  margin-right: -2px;
  border: 1px solid #007eac;
  border: 1px solid var(--highlight);
  order: -1;
  border-right: 0;
}

input:focus + .input-prepend {
  border-color: #007eac;
  border-color: var(--highlight);
}

input:focus + .input-append {
  border-color: #007eac;
  border-color: var(--highlight);
}

.-nav-height, .fixed-logo, .flx-nav, .U-nav-spacer {
  min-height: 90px;
}
@media screen and (max-width: 1000px) {
  .-nav-height, .fixed-logo, .flx-nav, .U-nav-spacer {
    min-height: 80px;
  }
}
.site-main {
  padding-top: 90px;
}
@media screen and (max-width: 1000px) {
  .site-main {
    padding-top: 80px;
  }
}

.site-header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  z-index: 10;
}
.nav-style--orange {
  background: #FFA700;
  border-bottom: solid 1px rgba(0,0,0,0.16863);
}

.nav-style--white {
  background: #EBE4CF;
  border-bottom: solid 1px rgba(0,0,0,0.16863);
}

.nav-style--nude {
  background: #EBE4CF;
  border-bottom: solid 1px rgba(0,0,0,0.16863);
}

.nav-style--home {
  background: rgba(0,0,0,0);
  color: white;
}
.nav-style--home .-nav-link, .nav-style--home .dropdown-nav > button {
  color: white;
}

.headroom--not-top .nav-style--home {
  background: #1A1A1A;
  color: white;
}
.headroom--not-top .nav-style--home .-nav-link, .headroom--not-top .nav-style--home .dropdown-nav > button {
  color: white;
}

.nav-cta {
  width: 40%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.nav-cta a {
  margin-left: 8px;
  background: #FFD05A;
  font-size: 1.7rem;
  padding: 8px 14px;
  border-radius: 999px;
  transition: all 0.3s;
}
@media screen and (max-width: 1000px) {
  .nav-cta a {
    margin-right: 75px;
  }
}
@media screen and (max-width: 600px) {
  .nav-cta a {
    margin-right: 60px;
    font-size: 14px;
    padding: 4px 10px;
  }
}
.nav-cta a:hover {
  background: black !important;
  color: white;
}

.headroom--top .nav-style--orange .nav-cta a {
  background: white;
}

.U-nav-spacer {
  position: relative;
  width: 100%;
  margin-bottom: 3px;
}

.flx-nav {
  transition: 0.5s;
}

#logo-border {
  opacity: 1;
  transition: 1s 1s;
}

.headroom--top .site-header {
  transform: translateY(0) !important;
  transition: transform 0.5s;
}
.headroom--top .flx-nav {
  transform: none !important;
}
.headroom--top #logo-border {
  opacity: 1 !important;
  transition: 0.5s !important;
}
.headroom--top .mobile-nav-trigger-box {
  transform: none !important;
  transition: 0.5s !important;
}

.S-on-sticky-scroll.S-has-sticky-container .site-header {
  transform: translateY(-102%);
}

.flx-nav {
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: space-between;
}
@media screen and (max-width: 1000px) {
  .flx-nav {
    justify-content: space-between;
  }
}

.flx-nav .header-logo {
  width: 20%;
  display: inline-flex;
  align-items: center;
  max-height: 50px;
}
.flx-nav .header-logo a {
  display: inline-block;
  line-height: 1;
  max-height: 50px;
  opacity: 1 !important;
}
.flx-nav .header-logo svg {
  height: 50px;
  width: auto;
}
@media screen and (max-width: 500px) {
  .flx-nav .header-logo, .flx-nav .header-logo a, .flx-nav .header-logo svg {
    height: 40px;
  }
}
.flx-nav .navigation-links {
  display: flex;
  width: 40%;
}

.nav-cta--mobile a {
  font-size: 1.7rem !important;
  padding: 8px 14px !important;
  background: #FFD05A;
  border-radius: 4px !important;
  display: inline-block !important;
  margin-bottom: 20px !important;
}

.-nav-link, .dropdown-nav > button {
  padding: 10px 18px;
  line-height: 1;
  position: relative;
  font-size: 2.6rem;
  font-weight: 400;
  border-radius: 6px;
}
.-nav-link:hover, .dropdown-nav > button:hover {
  color: black;
}

.S-active--nav-link {
  color: black;
}

.-desktop-nav.flx-container {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  position: relative;
}
@media screen and (max-width: 1000px) {
  .flx-nav {
    padding: 0;
  }

  .-nav-link, .dropdown-nav > button {
    font-size: 2rem;
    padding: 20px 6px;
    font-size: clamp(2.4rem, 3.6vw, 6rem);
  }

  .-desktop-nav.flx-container {
    width: 100%;
    position: absolute;
    top: 60px;
    min-width: 10px;
    justify-content: flex-start;
  }
}
@media screen and (max-width: 1000px) and (max-width: 500px) {
  .-desktop-nav.flx-container {
    top: 50px;
  }
}
@media screen and (max-width: 1000px) {
  .-desktop-nav.flx-container .navigation-links {
    display: none;
  }
}
.mobile-nav-trigger-box {
  position: fixed;
  top: 0;
  top: 38px;
  left: 0;
  z-index: 999;
  width: 100%;
  top: 17px;
  display: none !important;
  pointer-events: none;
}
@media screen and (max-width: 600px) {
  .mobile-nav-trigger-box {
    top: 26px;
  }
}
.mobile-nav-trigger-box .flx-container {
  display: flex;
  justify-content: flex-end;
}

.mobile-nav-trigger-box_inner {
  width: 100%;
}

.mobile-nav-trigger {
  position: relative;
  background: white;
  background: #C7BBE3;
  padding: 8px 14px;
  border-radius: 999px;
  transition: all 0.3s;
  -webkit-appearance: none;
  border: none;
  font-size: 2.6rem;
  border-radius: 777px;
  border: none;
  pointer-events: all;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: 0.25s cubic-bezier(0.7, 0, 0.3, 1);
  pointer-events: none;
}
@media screen and (max-width: 600px) {
  .mobile-nav-trigger {
    font-size: 1.6rem;
    padding: 6px 9px;
    font-size: 1.8rem;
    padding: 6px 28px;
    background: black;
    color: white;
  }
}
.mobile-nav-trigger svg:first-of-type {
  opacity: 1;
  transition: opacity 0.25s 0.25s;
}
.mobile-nav-trigger svg:last-of-type {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: opacity 0.25s;
}

.headroom--not-top.headroom--pinned .mobile-nav-trigger {
  opacity: 1;
  pointer-events: all;
  transform: none;
  cursor: pointer;
}

.headroom--top .mobile-nav-trigger {
  opacity: 0;
  transform: scale(0);
}

.S-active--mobile-nav .mobile-nav-trigger {
  opacity: 1 !important;
  pointer-events: all;
  transform: none;
  cursor: pointer;
}

@media screen and (min-width: 1000.11px) {
  .mobile-nav-trigger {
    display: none;
  }
}

@media screen and (max-width: 1000px) {
  .mobile-nav-trigger {
    opacity: 1 !important;
    pointer-events: all;
    transform: scale(1) !important;
  }
}
.fixed-mobile-navigation {
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  background: #EBE4CF;
  z-index: 665;
  max-width: 100%;
  height: 100%;
  overflow: hidden;
  visibility: hidden;
  transform: translate3d(0, 100%, 0);
  transition: cubic-bezier(0.7, 0, 0.3, 1) 0.7s 0.1s;
}
@media screen and (min-width: 1000.11px) {
  .fixed-mobile-navigation {
    display: none;
  }
}

.fixed-mobile-navigation_inner {
  min-height: 100%;
}
.fixed-mobile-navigation_inner .content-wrap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
@media screen and (max-width: 1000px) {
  .fixed-mobile-navigation_inner .content-wrap {
    justify-content: flex-start;
  }
}

.fixed-mobile-navigation .link-group {
  margin-top: 20px;
  margin-bottom: 20px;
}
.fixed-mobile-navigation .link-group p {
  margin: 0;
  margin-bottom: 0.5em;
  margin: 0;
  font-size: 3vw;
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  letter-spacing: 0.6px;
  color: #00CE83;
  color: #898989;
  letter-spacing: normal;
  font-style: italic;
}

.fixed-mobile-navigation .link-group:last-of-type {
  margin-top: 0;
}

.fixed-logo {
  align-items: center;
}
.fixed-logo a {
  height: 30px;
}
.fixed-logo svg {
  height: 30px;
}

@media screen and (max-width: 600px) {
  .fixed-logo a {
    height: 23px;
  }
  .fixed-logo svg {
    height: 23px;
  }
}
.fixed-logo.-bottom {
  margin-bottom: 10px;
}
@media screen and (min-width: 1000.11px) {
  .fixed-logo.-bottom {
    display: none;
  }
}

.fixed-logo.-top {
  position: absolute;
  top: 0;
  display: flex;
  left: 40px;
  z-index: 33;
}
@media screen and (max-width: 699.89px) {
  .fixed-logo.-top {
    left: 16px;
  }
}

.fixed-mobile-navigation__links {
  display: flex;
  flex-direction: column;
  margin-top: 80px;
  position: relative;
}
.fixed-mobile-navigation__links a, .fixed-mobile-navigation__links button {
  padding: 7px 0;
  display: inline-block;
  line-height: 1;
  color: inherit;
  position: relative;
  font-size: 8.2vw;
  font-size: clamp(2.2rem, 14vw, 10rem);
  display: inline-flex;
  margin-bottom: 2rem;
  margin-bottom: 10px;
  color: black !important;
  border-radius: 0;
  margin: 0;
  background: none;
  border: none;
  -webkit-appearance: none;
  font-weight: 400;
}
.fixed-mobile-navigation__links a span, .fixed-mobile-navigation__links button span {
  margin-right: 16px;
}

.fixed-mobile-navigation__links .fixed-order-cta {
  background: black;
  color: white;
  text-align: center;
  padding: 12px;
  border-radius: 10px;
  font-size: 18px;
  margin-top: 20px;
  display: inline-block;
  max-width: 140px;
}

.fixed-mobile-navigation__sub-links {
  margin-top: 20px;
}
.fixed-mobile-navigation__sub-links ul {
  list-style-type: none;
  margin: 0;
  color: white;
}
.fixed-mobile-navigation__sub-links li {
  margin-right: 20px;
  margin-bottom: 6px;
}
.fixed-mobile-navigation__sub-links a {
  color: black;
  font-weight: 400;
  position: relative;
  font-size: 2rem;
}

.fixed-mobile-navigation__links .link-wrap {
  padding: 1.6rem 0;
  padding: 0.6rem 0;
}

.fixed-mobile-navigation .flx-container {
  display: flex;
  width: 100%;
  height: 100%;
  flex-wrap: wrap;
  min-height: 100vh;
  position: relative;
  z-index: 2;
}
@media screen and (max-height: 700px) and (min-width: 1000.11px) {
  .fixed-mobile-navigation .flx-container {
    align-items: flex-start;
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
.fixed-mobile-navigation .cell {
  position: relative;
  width: 100%;
  min-height: 466px;
}
@media screen and (max-width: 1000px) {
  .fixed-mobile-navigation .cell {
    height: auto;
    margin-bottom: 40px;
  }
}
.fixed-mobile-navigation .-img-content .image-aspect-box {
  height: 100%;
  width: 100%;
}
.fixed-mobile-navigation .-footer {
  width: 100%;
  min-height: calc(100vh - 66.66%);
}

.S-active--mobile-nav .fixed-mobile-navigation {
  height: 120vh;
  visibility: visible;
  opacity: 1;
  overflow-y: auto;
  transform: translate3d(0, 0, 0);
}
.S-active--mobile-nav .mobile-nav-trigger svg:first-of-type {
  opacity: 0;
  transition: opacity 0.25s;
}
.S-active--mobile-nav .mobile-nav-trigger svg:last-of-type {
  opacity: 1;
  transition: opacity 0.25s 0.25s;
}

.modal-smoke {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  background: black;
  opacity: 0.8;
  transition: opacity 0.25s, height 0s 0s !important;
  z-index: 3 !important;
}

.S-active--mobile-nav .modal-smoke {
  height: 100% !important;
  opacity: 0.7 !important;
  transition: opacity 0.5s !important;
  pointer-events: auto;
}

.fixed-mobile-navigation__bottom-graphics {
  display: none;
}

@media screen and (min-height: 850px) and (min-width: 1000.11px) {
  .fixed-mobile-navigation_inner {
    display: flex;
    flex-direction: column;
  }

  .fixed-mobile-navigation .cell {
    max-height: 500px;
  }

  .fixed-mobile-navigation .flx-container {
    min-height: 10px;
    padding-top: 140px;
  }

  .fixed-mobile-navigation__bottom-graphics {
    display: block;
    margin-top: 100px;
    background-position: top;
    background-repeat: no-repeat;
    background-size: cover;
    flex-grow: 1;
    width: 100%;
  }
}
@media screen and (max-width: 1000px) {
  .fixed-mobile-navigation .-img-content {
    display: none;
  }
}
.-nav-link, .dropdown-nav > button {
  transition: opacity 0.25s;
}

.S-active--hover-element {
  opacity: 1 !important;
}

.site-header {
  z-index: 4;
}

.site-container {
  z-index: 3;
}

.nav-separator {
  display: flex;
  position: relative;
  height: 100%;
}
.nav-separator .nav-separator__inner {
  background: black;
  height: 23px;
  width: 1px;
  background: black;
  opacity: 0.3;
}
@media screen and (max-width: 1000px) {
  .nav-separator {
    display: none;
  }
}

.nav__news-feed {
  position: absolute;
  width: auto;
  background: #333333;
  z-index: 3;
  border-radius: 8px;
  box-shadow: 2px 3px 16px rgba(0, 0, 0, 0.1);
  overflow-y: auto;
  opacity: 0;
  transform: translateY(20px);
  pointer-events: none;
  height: 0;
  transition: transform 0.25s, opacity 0.25s, height 0s 0.3s;
}
.nav__news-feed.-desktop {
  top: 50px;
  left: 0;
}
@media screen and (max-width: 1000px) {
  .nav__news-feed.-desktop {
    right: 0;
    left: auto;
    top: 40px;
  }
}
@media screen and (max-width: 550px) {
  .nav__news-feed.-desktop {
    right: -40px;
    left: auto;
    top: 50px;
  }
}
.nav__news-feed.-desktop .inner {
  max-width: 50%;
  min-width: 420px;
  min-height: 191px;
  max-height: 191px;
  overflow-y: auto;
}
@media screen and (max-width: 550px) {
  .nav__news-feed.-desktop .inner {
    max-width: 100vw;
    min-width: 10px;
    width: calc(100vw - 70px);
  }
}
.nav__news-feed .news-feed-footer {
  background: black;
  padding: 20px;
}
.nav__news-feed ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  color: white;
  font-size: 1.5rem;
  margin: 0;
}
@media screen and (max-width: 1000px) {
  .nav__news-feed ul {
    font-size: 1.3rem;
  }
}
.nav__news-feed li {
  display: flex;
  align-items: center;
  border-bottom: solid 1px #B0B0B0;
  padding: 20px 20px;
  padding-right: 40px;
  transition: 0.25s;
  cursor: pointer;
}
.nav__news-feed li:hover {
  background: #1b1b1b;
}
.nav__news-feed .tag {
  font-size: 1.1rem;
  background: #ffff22;
  color: black;
  padding: 4px;
  border-radius: 2px;
  line-height: 100%;
  min-width: 50px;
  text-align: center;
}
.nav__news-feed p {
  margin: 0;
  margin-left: 10px;
}

.nav__news-feed.-mobile {
  top: 60px;
  left: 0;
  height: 100%;
  transform: none;
  opacity: 1;
  background: none;
  box-shadow: none;
  overflow: hidden;
  pointer-events: auto;
  position: relative;
  top: 0;
}
.nav__news-feed.-mobile h3 {
  margin: 0;
  margin-top: 10px;
  margin-bottom: 0;
  display: inline-block;
  line-height: 1;
  font-weight: 500;
  color: inherit;
  position: relative;
}
.nav__news-feed.-mobile .h4 {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  margin: 0;
}
.nav__news-feed.-mobile li {
  border: none;
  padding-left: 0;
}
.nav__news-feed.-mobile li:hover {
  background: none;
}
.nav__news-feed.-mobile .news-feed-footer {
  background: none;
  padding-left: 0;
}

.nav__news-feed.-mobile.-on__vertical .news-feed-footer {
  padding-bottom: 0;
  padding-top: 10px;
}

@media screen and (min-width: 1000.11px) {
  .nav__news-feed.-mobile.-on__vertical {
    display: none;
  }
}
.S-active--news-feed .nav__news-feed.-desktop {
  opacity: 1;
  transform: none;
  pointer-events: auto;
  height: auto;
  transition: transform 0.25s, opacity 0.25s, height 0s;
}
.S-active--news-feed-mobile .nav__news-feed.-mobile {
  opacity: 1;
  transform: none;
  pointer-events: auto;
  height: auto;
  transition: transform 0.25s, opacity 0.25s, height 0s;
}
.S-active--news-feed-mobile .fixed-mobile-navigation__links .-nav-link, .S-active--news-feed-mobile .fixed-mobile-navigation__links .dropdown-nav > button, .S-active--news-feed-mobile .fixed-mobile-navigation__sub-links {
  opacity: 0;
  pointer-events: none;
}

.-scroll-top {
  top: auto;
  bottom: 30px;
}

.scroll-top-trigger {
  width: 50px;
  border: none;
  background: none;
  padding: 0;
  opacity: 0;
  transition: 0.3s;
  pointer-events: none;
  overflow: hidden;
}
.scroll-top-trigger svg {
  width: 100%;
  height: auto;
  transform: rotate(-90deg);
}

.headroom--not-top.headroom--pinned .scroll-top-trigger {
  opacity: 1;
  pointer-events: all;
  transform: none;
  cursor: pointer;
}

.lang-switch {
  right: 140px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  padding: 7px 3px;
  transition: opacity 0.3s;
  border-radius: 999px;
  font-weight: 500;
  text-transform: none;
  text-transform: initial;
}
@media screen and (max-width: 1000px) {
  .lang-switch {
    right: 60px;
    top: 50%;
    transform: translateY(-50%);
    position: absolute;
    border: none;
  }
}
.lang-switch a {
  margin: 0 10px;
  line-height: 1;
  letter-spacing: normal;
  font-style: italic;
}
.lang-switch a:hover {
  opacity: 1;
  transition: 0.25s;
  text-decoration: underline;
}

.lang-separator {
  position: relative;
  height: calc(12px);
  width: 1px;
  background: #b4b4b4;
}

.lang-switch--fi-active .link-fi {
  opacity: 1;
}

.lang-switch--en-active .link-en {
  opacity: 1;
}

@media screen and (max-width: 1000px) {
  .headroom--not-top .lang-switch {
    opacity: 0;
    pointer-events: none;
  }
}

.dropdown-nav > button {
  background: none;
  color: inherit;
  border: none;
  cursor: pointer;
  outline: inherit;
}

.dropdown-nav__wrap {
  position: absolute;
  top: 30px;
  left: 50%;
  transform: translateX(-50%);
  padding-top: 29px;
  max-width: 80vw;
  pointer-events: none;
}

.S-active--dropdown div {
  pointer-events: auto;
}

.dropdown-nav {
  position: relative;
}

.dropdown-nav__content {
  overflow: hidden;
  min-width: 100%;
  border-radius: 18px;
  background-color: #333333;
  box-shadow: rgba(0, 0, 0, 0.21) 0px 8px 24px;
}

.dropdown-nav__content {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(10px);
  transition: 0.2s;
}

.dropdown-nav__content .flx-container {
  display: flex;
}

.dropdown-nav__cell {
  width: 100%;
  padding: 40px;
}

.-arrow-link, .dropdown-nav__cell.-right li .-main-link {
  display: inline-flex;
  align-items: center;
}
.-arrow-link a, .dropdown-nav__cell.-right li .-main-link a {
  padding-left: 0;
  color: white;
  background: inherit !important;
  background-color: #333333;
}
.-arrow-link svg, .dropdown-nav__cell.-right li .-main-link svg {
  transform: rotate(90deg);
}
.-arrow-link:hover, .dropdown-nav__cell.-right li .-main-link:hover {
  color: #00CE83;
}
.dropdown-nav__cell.-right ul {
  all: unset;
  display: flex;
  flex-direction: column;
  list-style: none;
}
.dropdown-nav__cell.-right li {
  all: unset;
  border-bottom: solid 1px rgba(255,255,255,0.16078);
  padding: 16px 0;
  min-width: 300px;
  color: white;
}
.dropdown-nav__cell.-right li:first-of-type {
  padding-top: 0;
}
.dropdown-nav__cell.-right li:last-of-type {
  padding-bottom: 0;
  border-bottom: none;
}
.dropdown-nav__cell.-right li a {
  color: white;
  font-size: 1.6rem;
  background-color: #333333 !important;
}
.dropdown-nav__cell.-right li .-main-link {
  min-width: 100%;
  padding-left: 0;
  padding-right: 0;
  justify-content: space-between;
}
.dropdown-nav__cell.-right li .-main-link span {
  display: flex;
  align-items: center;
}
.dropdown-nav__cell.-right li .-main-link img {
  width: 30px;
  display: inline-flex;
  padding: 10px;
  border-radius: 10px;
  margin-right: 16px;
}
.dropdown-nav__cell.-right li .-sub-links {
  padding-top: 26px;
  display: flex;
  flex-wrap: wrap;
}
.dropdown-nav__cell.-right li .-sub-links a {
  color: white;
  font-size: 1.4rem;
  padding: 12px;
  padding: 8px 12px;
  margin-right: 10px;
  margin-bottom: 10px;
  border: none;
  border-radius: 4px;
}

.S-active--dropdown .dropdown-nav__content {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0px);
  transition: 0.25s;
}

.dropdown-nav {
  cursor: pointer;
}

.S-active--dropdown button {
  background: #f4efe8;
}

.S-active--dropdown button svg {
  transform: rotate(-180deg);
}

.back-to-top-link {
  all: unset;
  position: fixed;
  color: white;
  bottom: 20px;
  background: #333333;
  font-size: 1.4rem;
  padding: 1rem;
  border-radius: 6px;
  opacity: 0;
  transition: opacity 0.3s;
  z-index: 999;
  outline: none;
  box-shadow: rgba(0, 0, 0, 0.21) 0px 8px 24px;
  cursor: pointer;
  left: 50%;
  transform: translateX(-50%);
  pointer-events: none;
}

.headroom--pinned.headroom--not-top .back-to-top-link {
  opacity: 1;
  pointer-events: auto;
}

.touch-device .back-to-top-link {
  transition: opacity 0s;
}

.mobile-nav-trigger {
  transition: opacity 0.5s;
}

.fixed-mobile-navigation .-header {
  position: relative;
}
.fixed-mobile-navigation .-header svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  width: 160px;
  left: 40px;
  display: none;
}
@media screen and (max-width: 700px) {
  .fixed-mobile-navigation .-header svg {
    left: 16px;
    width: 155px;
  }
}
.fixed-mobile-navigation .-header img {
  max-height: 142px;
  width: 100%;
}
@media screen and (max-width: 600px) {
  .fixed-mobile-navigation .-header img {
    max-height: 100px;
  }
}

.mobile-nav-logo {
  margin-top: 30px;
  margin-bottom: 30px;
  height: auto;
}
.mobile-nav-logo svg {
  height: 26px;
}
.mobile-nav-logo svg path {
  fill: black !important;
}

.dom-loading .dropdown-nav__wrap {
  display: none;
}

.page-template-jasenet .mobile-nav-trigger-box, .page-template-hallitus .mobile-nav-trigger-box, .page-template-haejseneksi .mobile-nav-trigger-box {
  position: absolute;
}

@media screen and (min-width: 1000.11px) {
  .S-active--nav-hover .-nav-link, .S-active--nav-hover .dropdown-nav > button {
    opacity: 0.4;
  }
  .S-active--nav-hover .S-active--hover-element {
    opacity: 1 !important;
  }

  .S-detected--tab .nav-style--home {
    background: #1A1A1A;
    color: white;
  }
}
.newsletter-block .image-wrap {
  min-height: 600px;
}
@media screen and (max-width: 1000px) {
  .newsletter-block .image-wrap {
    min-height: 200px;
  }
  .newsletter-block .cell_txt-content {
    margin: auto;
  }
  .newsletter-block .cell_txt-content div {
    max-width: 100% !important;
  }
}

/*--------------------------------------------------------------
# Default Footer
--------------------------------------------------------------*/
.site-footer {
  width: 100%;
  padding: 80px 0;
}
@media screen and (max-width: 600px) {
  .site-footer {
    padding: 40px 0;
  }
}

.footer-gutenberg-cell .footer-flx {
  display: flex;
  flex-wrap: wrap;
}
.footer-gutenberg-cell .footer-flx .prime-footer--vasen {
  width: 25%;
}
@media screen and (max-width: 1500px) {
  .footer-gutenberg-cell .footer-flx .prime-footer--vasen {
    width: 33.33%;
  }
}
@media screen and (max-width: 1000px) {
  .footer-gutenberg-cell .footer-flx .prime-footer--vasen {
    width: 100%;
    margin-bottom: 30px;
  }
}
.footer-gutenberg-cell .footer-flx .prime-footer--keski {
  flex-grow: 2;
}
@media screen and (max-width: 1000px) {
  .footer-gutenberg-cell .footer-flx .prime-footer--keski {
    width: 100%;
    margin-bottom: 30px;
  }
}
.footer-gutenberg-cell .footer-flx .prime-footer--oikea {
  display: flex;
  justify-content: flex-end;
}
@media screen and (max-width: 1000px) {
  .footer-gutenberg-cell .footer-flx .prime-footer--oikea {
    width: 100%;
    justify-content: flex-start;
  }
}

.footer-gutenberg-cell ul {
  list-style: none;
  margin: 0;
}

.prime-footer--vasen {
  display: flex;
}
.prime-footer--vasen > div {
  flex-grow: 2;
  display: flex;
  height: 100%;
  flex-direction: column;
}
.prime-footer--vasen > div .footer-some-linkit {
  margin-top: 20px;
  flex-grow: 2;
  display: flex;
}
.prime-footer--vasen > div .footer-some-linkit > div {
  align-items: flex-end;
  display: flex;
  justify-content: flex-end;
}
.prime-footer--vasen > div .footer-some-linkit > div figure {
  margin: 0;
  margin-right: 12px;
  width: 24px;
}

.footer-logo-prime svg {
  height: 32px;
  width: auto;
}

.teksti-alhaalla {
  margin-bottom: 0;
}

.footer-logo-box {
  display: flex;
  justify-content: center;
}

.footer-block {
  margin: 30px 0;
}
.footer-block p {
  font-size: 17px;
}

.footer-tietosuoja p {
  margin-bottom: 30px;
  font-size: 1.4rem;
  font-weight: 800;
}
.footer-tietosuoja a {
  color: #808080;
}

#footer-logo {
  width: 215px;
  height: auto;
}
@media screen and (max-width: 1100px) {
  #footer-logo {
    width: 175px;
  }
}
@media screen and (max-width: 600px) {
  #footer-logo {
    width: 145px;
  }
}

.footer__header p {
  max-width: 90%;
}
.footer__header .-yhteystiedot p {
  min-width: 50%;
  padding-right: 20px;
  margin: 0;
  margin-bottom: 4px;
}

.footer-heading, .footer-group-header {
  color: #00CE83;
}

.-nav-link-spacer {
  min-height: 20px;
  position: relative;
}

.footer__left-bar {
  margin-top: 40px;
  font-size: 1.6rem;
  width: 33.33%;
  width: 100%;
  display: flex;
  flex-direction: column;
}
.footer__left-bar p {
  letter-spacing: 0.6px;
}
.footer__left-bar .footer-logo {
  min-height: 56px;
}
.footer__left-bar .flx-container {
  display: flex;
  flex-direction: column;
}

.footer__nav-links {
  flex-grow: 1;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.footer__nav-links .link-group {
  width: 100%;
  margin-bottom: 20px;
  display: flex;
  flex-wrap: wrap;
}
.footer__nav-links .link-group a {
  font-size: 1.7rem;
  white-space: nowrap;
  line-height: 1;
  margin-right: 16px;
}
@media screen and (max-width: 1500px) {
  .footer__nav-links .link-group a {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 1200px) {
  .footer__nav-links .link-group a {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 500px) {
  .footer__nav-links .link-group a {
    font-size: 1.7rem;
    display: block;
    margin: 1rem 0;
  }
}
.footer__nav-links .link-group a:hover {
  text-decoration: underline;
}
.footer__nav-links .link-group--yhteys {
  width: 66.66%;
}

.footer__extra-content .info-card {
  text-align: center;
  background: #edf9ff;
  padding: 60px 40px;
  margin-bottom: 0;
}
.footer__extra-content h3 {
  margin-bottom: 20px;
  color: #00CE83;
}
.footer__extra-content p {
  font-size: 1.8rem;
}

@media screen and (max-width: 750px) {
  .footer__nav-links {
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .footer__extra-content {
    width: 100%;
    padding-top: 20px;
  }
}

.footer-logo svg {
  height: 80px;
  width: auto;
  display: none;
}

.section--new-articles-carousel {
  padding-top: 40px;
}
.section--new-articles-carousel .section-bg-container {
  padding-top: 40px;
  border-top: solid 1px #d2d2d2;
}
.section--new-articles-carousel .swiper-container {
  margin: 0 -20px;
}
.section--new-articles-carousel .cell {
  padding: 0 !important;
}
.section--new-articles-carousel .basic-card__content {
  padding-top: 0;
}

.sticky-nav--articles {
  position: sticky;
  top: 0;
  background: white;
  z-index: 3;
}
@media screen and (max-width: 1200px) {
  .sticky-nav--articles {
    position: relative;
  }
}

.pjax-navigation__inner {
  display: flex;
  white-space: nowrap;
  flex-wrap: wrap;
  align-items: center;
  padding: 14px 0;
  padding-bottom: 0;
}
.pjax-navigation__inner .btn--filter {
  margin-left: 10px;
  margin-bottom: 14px;
}
.pjax-navigation__inner .btn--basic {
  margin-bottom: 14px;
}

.tyot-filter-navigation .pjax-navigation__inner {
  white-space: normal;
  overflow: hidden;
  flex-wrap: wrap;
  padding-left: 1px;
}
.tyot-filter-navigation .btn--filter {
  margin-left: 0 !important;
  margin-right: 6px;
  margin: 0;
  margin-bottom: 6px;
  margin-right: 6px;
}
.tyot-filter-navigation .filter-all {
  margin-right: 6px;
  margin-bottom: 6px;
}
@media screen and (max-width: 1000px) {
  .tyot-filter-navigation .filter-all {
    margin-right: 10px;
  }
}

.palvelut-filters .btn--filter {
  margin-left: 0;
  margin-right: 10px;
}

.teleport--palvelut-nav {
  margin-bottom: 40px;
}
@media screen and (min-width: 1200.11px) {
  .teleport--palvelut-nav {
    display: none;
  }
}
.teleport--palvelut-nav .heading-label {
  margin-left: 16px;
  margin-right: 16px;
  padding-top: 40px;
  margin-bottom: 10px;
  border-top: solid 1px #d2d2d2;
}
.teleport--palvelut-nav .pjax-navigation__inner {
  overflow: auto;
  flex-wrap: nowrap;
}

@media screen and (max-width: 1400px) {
  .palvelut-filters .btn--basic, .teleport--palvelut-nav .btn--basic {
    margin-left: 16px !important;
  }
  .palvelut-filters .section-inner-container, .teleport--palvelut-nav .section-inner-container {
    padding: 0;
  }
  .palvelut-filters .pjax-navigation__inner, .teleport--palvelut-nav .pjax-navigation__inner {
    overflow: auto;
    flex-wrap: nowrap;
  }
  .palvelut-filters .btn--filter:first-of-type, .teleport--palvelut-nav .btn--filter:first-of-type {
    margin-left: 10px;
  }
}

@media screen and (max-width: 1000px) {
  .sticky-nav--tyot {
    margin-left: -30px;
    margin-right: -30px;
    padding: 0 !important;
    min-width: 100vw;
  }
  .sticky-nav--tyot .section-inner-container {
    padding: 0;
  }
  .sticky-nav--tyot .pjax-navigation__inner {
    overflow: auto;
    flex-wrap: nowrap;
  }
  .sticky-nav--tyot .btn--filter {
    margin-right: 10px;
    white-space: nowrap;
  }
  .sticky-nav--tyot .btn--basic:first-of-type {
    margin-left: 30px;
  }
}
@media screen and (max-width: 700px) {
  .sticky-nav--tyot {
    margin-left: -16px;
    margin-right: -16px;
    padding: 0 !important;
    min-width: 100vw;
  }
  .sticky-nav--tyot .section-inner-container {
    padding: 0;
  }
  .sticky-nav--tyot .pjax-navigation__inner {
    overflow: auto;
    flex-wrap: nowrap;
  }
  .sticky-nav--tyot .btn--filter {
    margin-right: 10px;
    white-space: nowrap;
  }
  .sticky-nav--tyot .btn--basic:first-of-type {
    margin-left: 16px;
  }
}

@media screen and (max-width: 1000px) {
  .sticky-nav--articles {
    padding: 0 !important;
    min-width: 100vw;
  }
  .sticky-nav--articles .section-inner-container {
    padding: 0;
  }
  .sticky-nav--articles .pjax-navigation__inner {
    overflow: auto;
    flex-wrap: nowrap;
  }
  .sticky-nav--articles .btn--filter {
    white-space: nowrap;
  }
  .sticky-nav--articles .btn--basic:first-of-type {
    margin-left: 30px;
  }
}
@media screen and (max-width: 700px) {
  .sticky-nav--articles {
    padding: 0 !important;
    min-width: 100vw;
  }
  .sticky-nav--articles .section-inner-container {
    padding: 0;
  }
  .sticky-nav--articles .pjax-navigation__inner {
    overflow: auto;
    flex-wrap: nowrap;
  }
  .sticky-nav--articles .btn--filter {
    white-space: nowrap;
  }
  .sticky-nav--articles .btn--basic:first-of-type {
    margin-left: 16px;
  }
}

.single-article-card .-meta {
  margin-top: 20px;
}
.single-article-card .-title {
  font-size: 2.6rem;
  margin: 0;
}
@media screen and (max-width: 700px) {
  .single-article-card .-title {
    font-size: 2rem;
  }
}
.single-article-card .-meta-text {
  margin-top: 10px;
  font-weight: 500;
  font-size: 1.8rem;
}
.single-article-card p  {
  margin-bottom: 0;
}
.single-article-card .-desc {
  font-size: 1.6rem;
  margin-top: 10px;
}
.single-article-card .-desc p {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}
.single-article-card .news-tag {
  margin-top: 16px;
}

.swiper .single-article-card .-title {
  font-size: 2rem;
}
.swiper .single-article-card .-desc {
  display: none;
}
@media screen and (max-width: 700px) {
  .swiper .basic-card__content {
    padding: 16px;
  }
  .swiper .single-article-card .-title {
    font-size: 1.8rem;
  }
  .swiper .single-article-card .-desc {
    display: none;
  }
}

.posts-container .posts-flx {
  display: flex;
  flex-wrap: wrap;
  margin-left: -20px;
  margin-right: -20px;
}
.posts-container .posts-flx .cell {
  width: 33.33%;
}

@media screen and (min-width: 1000.11px) {
  .posts-container--main .posts-flx__featured .cell:first-of-type {
    width: 100%;
  }
  .posts-container--main .posts-flx__featured .cell:first-of-type .basic-card__content {
    display: flex;
    flex-direction: row;
  }
  .posts-container--main .posts-flx__featured .cell:first-of-type .basic-card__image {
    width: 50%;
  }
  .posts-container--main .posts-flx__featured .cell:first-of-type .-meta {
    padding-left: 60px;
    width: 50%;
  }
}
@media screen and (min-width: 1000.11px) and (max-width: 1400px) {
  .posts-container--main .posts-flx__featured .cell:first-of-type .-meta {
    padding-left: 40px;
  }
}
@media screen and (min-width: 1000.11px) {
  .posts-container--main .posts-flx__featured .cell:first-of-type .-meta {
    margin-top: 0;
  }
}
@media screen and (min-width: 1000.11px) {
  .posts-container--main .posts-flx__featured .cell:first-of-type .-title {
    font-size: 4rem;
    margin: 0;
  }
}
@media screen and (min-width: 1000.11px) and (max-width: 1400px) {
  .posts-container--main .posts-flx__featured .cell:first-of-type .-title {
    font-size: 3.2rem;
    font-size: clamp(2.8rem, 2.7vw, 4rem);
  }
}
@media screen and (min-width: 1000.11px) {
  .posts-container--main .posts-flx__featured .cell:first-of-type p  {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 1000.11px) {
  .posts-container--main .posts-flx__featured .cell:first-of-type .-desc {
    font-size: 2rem;
    margin-top: 20px;
  }
}
@media screen and (min-width: 1000.11px) and (max-width: 1400px) {
  .posts-container--main .posts-flx__featured .cell:first-of-type .-desc {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1000.11px) {
  .posts-container--main .posts-flx__featured .cell:first-of-type .news-tag {
    margin-top: 20px;
  }
}
.posts-more-container--hidden {
  display: none !important;
}

.home-featured-article {
  position: sticky;
  top: 20px;
}

.home-news-list .cell .basic-card__image {
  min-width: 40%;
  margin-right: 20px;
}
@media screen and (max-width: 1000px) {
  .home-news-list .cell .basic-card__image {
    min-width: 40%;
  }
}
@media screen and (max-width: 600px) {
  .home-news-list .cell .basic-card__image {
    min-width: 25%;
  }
}
.home-news-list .cell .placeholder-img {
  display: none;
}
.home-news-list .cell .basic-card__image > div {
  padding-top: 100%;
}
@media screen and (max-width: 1000px) {
  .home-news-list .cell .basic-card__image > div {
    padding-top: 58%;
  }
}
@media screen and (max-width: 600px) {
  .home-news-list .cell .basic-card__image > div {
    padding-top: 100%;
  }
}

.module--news-home {
  margin-left: -20px;
  margin-right: -20px;
}
.module--news-home .-desc {
  display: none;
}
.module--news-home .sidebar-header__left {
  width: 50%;
}
.module--news-home .sidebar-header__right {
  width: 50%;
}

@media screen and (max-width: 1000px) {
  .module--news-home {
    margin-left: -20px;
    margin-right: -20px;
  }
  .module--news-home .sidebar-header__left {
    width: 100%;
  }
  .module--news-home .sidebar-header__right {
    width: 100%;
  }
}
.home-news-list .cell .basic-card__content {
  flex-direction: row;
}
.home-news-list .cell .-meta {
  margin-top: 0;
}
@media screen and (max-width: 600px) {
  .home-news-list .cell .-meta {
    margin-left: -10px;
  }
}
.home-news-list .cell .-desc {
  display: none;
}
@media screen and (max-width: 1300px) {
  .home-news-list .cell .-title {
    font-size: 2rem;
  }
}
@media screen and (max-width: 600px) {
  .home-news-list .cell .-title {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 600px) {
  .home-news-list .cell {
    border-bottom: solid 1px #dadada;
  }

  .home-news-list .cell:first-of-type {
    border-top: solid 1px #dadada;
  }
}
@media screen and (max-width: 1000px) {
  .home-news-list .single-article-card:nth-of-type(3), .home-news-list .single-article-card:nth-of-type(4) {
    display: none;
  }
}
@media screen and (min-width: 1000.11px) {
  .home-featured-article .cell:first-of-type .-title {
    font-size: 4rem;
    margin: 0;
  }
}
@media screen and (min-width: 1000.11px) and (max-width: 1400px) {
  .home-featured-article .cell:first-of-type .-title {
    font-size: 3.2rem;
    font-size: clamp(2.8rem, 2.7vw, 4rem);
  }
}
@media screen and (min-width: 1000.11px) {
  .home-featured-article .cell:first-of-type p  {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 1000.11px) {
  .home-featured-article .cell:first-of-type .-desc {
    display: none;
    font-size: 2rem;
    margin-top: 20px;
  }
}
@media screen and (min-width: 1000.11px) and (max-width: 1400px) {
  .home-featured-article .cell:first-of-type .-desc {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1000.11px) {
  .home-featured-article .cell:first-of-type .news-tag {
    margin-top: 20px;
  }
}
@media screen and (max-width: 1300px) {
  .posts-container--main .posts-flx .cell .-title, .posts-container .posts-flx .cell .-title {
    font-size: 2rem;
  }
}
@media screen and (max-width: 1000px) {
  .posts-container--main .posts-flx {
    margin-left: -10px;
    margin-right: -10px;
  }

  .posts-container--main .posts-flx .cell, .posts-container .posts-flx .cell {
    width: 50%;
  }
  .posts-container--main .posts-flx .cell .basic-card__content, .posts-container .posts-flx .cell .basic-card__content {
    padding: 20px 10px;
  }
  .posts-container--main .posts-flx .cell .-title, .posts-container .posts-flx .cell .-title {
    font-size: 2rem;
    margin: 0;
  }
}
@media screen and (max-width: 700px) {
  .posts-container--main .posts-flx .cell .-title {
    font-size: 2rem;
  }
}
@media screen and (max-width: 600px) {
  .posts-container--main .posts-flx, .posts-container .posts-flx {
    margin-left: -10px;
    margin-right: -10px;
  }

  .posts-container--main .posts-flx .cell, .posts-container .posts-flx .cell {
    width: 100%;
  }
  .posts-container--main .posts-flx .cell .basic-card__content, .posts-container .posts-flx .cell .basic-card__content {
    padding: 20px 10px;
  }
  .posts-container--main .posts-flx .cell .-title, .posts-container .posts-flx .cell .-title {
    font-size: 2rem;
    margin: 0;
  }
}
@media screen and (max-width: 600px) {
  .posts-container--tyot .posts-flx {
    margin-left: -16px;
    margin-right: -16px;
  }
}
.next-article-container a {
  cursor: pointer;
  text-decoration: none !important;
}

.next-article-container .basic-card__content {
  padding: 0;
  padding-bottom: 10px;
}

.has-vivid-green-cyan-color {
  color: black !important;
}

.cat-nav {
  position: relative;
  padding-bottom: 30px;
  display: flex;
  flex-direction: column;
  position: sticky;
  top: 0;
  padding-top: 48px;
}
.cat-nav .meta-label {
  display: block;
  font-size: 1.4rem;
  font-weight: 600;
  color: grey;
  margin-bottom: 1px;
}
.cat-nav .-topics {
  display: flex;
  flex-wrap: wrap;
  padding-right: 20px;
}
.cat-nav button, .cat-nav a {
  font-size: 2rem;
  display: inline-block;
  margin: 0;
  margin-right: 10px;
  display: inline-block;
}
@media screen and (max-width: 1000px) {
  .cat-nav button, .cat-nav a {
    font-size: 2rem;
  }
}
.cat-nav button span, .cat-nav a span {
  color: black;
  font-size: 1.8rem;
  color: #808080;
  pointer-events: none;
  transition: 0.5s;
}
@media screen and (max-width: 1360px) {
  .cat-nav button span, .cat-nav a span {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 1000px) {
  .cat-nav button span, .cat-nav a span {
    font-size: 1.2rem;
  }
}
.cat-nav button:hover span, .cat-nav a:hover span {
  color: black;
}
.cat-nav .S-active span {
  color: black;
}

.tax-nav-header {
  padding-left: 33.33%;
  padding-top: 40px;
}
@media screen and (max-width: 1200px) {
  .tax-nav-header {
    padding-left: 0;
  }
}

.cat-nav--mobile {
  margin-top: 30px !important;
  border-top: solid 1px #c5c5c5;
  padding-top: 20px !important;
  margin-bottom: 0 !important;
}

@media screen and (min-width: 1000.11px) {
  .cat-nav--mobile {
    display: none;
  }
}
@media screen and (max-width: 1000px) {
  .cat-nav {
    margin: 0;
    margin-bottom: 40px;
    padding: 0;
    position: relative;
    width: 100%;
  }

  .cat-nav .-topics {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
  .cat-nav .-topics a {
    margin-right: 20px;
    margin-bottom: 0px;
  }
}
.section--new-article .news-cell {
  border: none !important;
  padding: 0 !important;
}
.section--new-article .news-cell .basic-card__image {
  width: 33.33%;
  min-width: 50%;
  padding: 0;
}
.section--new-article .basic-card__content.-has-article-image {
  padding-right: 0 !important;
  padding-left: 60px !important;
}
@media screen and (max-width: 1400px) {
  .section--new-article .basic-card__content.-has-article-image {
    padding-left: 40px !important;
  }
}
@media screen and (max-width: 1000px) {
  .section--new-article .basic-card__content.-has-article-image {
    padding-left: 20px !important;
  }
}
@media screen and (max-width: 600px) {
  .section--new-article .basic-card__content.-has-article-image {
    width: 100% !important;
    padding-left: 0 !important;
  }
}
.section--new-article .basic-card__content.-has-article-image .-desc {
  display: block !important;
  display: -webkit-box !important;
  font-size: clamp(2rem, 1.8vw, 2.2rem);
}
.section--new-article .basic-card__content.-no-article-image {
  padding: 0 !important;
  max-width: 100% !important;
}
@media screen and (max-width: 600px) {
  .section--new-article .basic-card__content.-no-article-image {
    margin-top: 30px;
  }
}
.section--new-article .basic-card__content.-no-article-image .-meta {
  display: flex;
  flex-wrap: wrap;
}
.section--new-article .basic-card__content.-no-article-image .-meta .-title {
  display: block;
  width: 50%;
  padding-right: 2em;
  font-size: clamp(2.4rem, 2.5vw, 4.2rem);
}
@media screen and (max-width: 1000px) {
  .section--new-article .basic-card__content.-no-article-image .-meta .-title {
    width: 100%;
    padding-right: 0;
  }
}
.section--new-article .basic-card__content.-no-article-image .-meta .-desc {
  display: block;
  width: 50%;
  padding-right: 2em;
  margin: 1.5rem 0;
  font-size: clamp(2rem, 1.8vw, 2.4rem);
}
@media screen and (max-width: 1000px) {
  .section--new-article .basic-card__content.-no-article-image .-meta .-desc {
    width: 100%;
    padding-right: 0;
  }
  .section--new-article .basic-card__content.-no-article-image .-meta .-desc p {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 600px) {
  .section--new-article .basic-card__content.-no-article-image .-meta .-desc {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 600px) {
  .section--new-article .module--new-article {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }
  .section--new-article .basic-card__inner {
    flex-wrap: wrap;
  }
  .section--new-article .basic-card__image, .section--new-article .basic-card__content {
    width: 100% !important;
    padding-left: 0 !important;
    margin-bottom: 20px;
  }
}

.article-loading-done {
  color: black;
  text-align: center;
  font-size: 2.4rem;
}

.section--page-content {
  margin-top: 80px;
}
@media only screen and (max-width: 1200px) {
  .section--page-content {
    margin-top: 60px;
  }
}

.article-header h1 {
  font-size: 6rem;
}
@media screen and (max-width: 1700px) {
  .article-header h1 {
    font-size: 3.5vw;
    font-size: clamp(2.6rem, 3.5vw, 6rem);
  }
}
.article-header h3 {
  font-size: 2.4rem;
}
@media screen and (max-width: 1700px) {
  .article-header h3 {
    font-size: 2vw;
    font-size: clamp(1.8rem, 3vw, 2.2rem);
  }
}

.article-header {
  position: relative;
  margin-top: 80px;
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (max-width: 1200px) {
  .article-header {
    margin-top: 60px;
  }
}
.article-header .label {
  position: absolute;
  font-size: 1.2rem;
  text-transform: uppercase;
  left: 0;
  top: -3em;
  color: #808080;
}
.article-header h1 {
  width: 66.66%;
  padding-right: 20px;
  line-height: 1.1;
}
.article-header h3 {
  width: 33.33%;
}
@media only screen and (max-width: 1050px) {
  .article-header h1 {
    width: 100%;
    padding-right: 20px;
    line-height: 1.1;
    margin-bottom: 0.5em;
  }
  .article-header h3 {
    width: 100%;
    max-width: 75%;
  }
}
@media only screen and (max-width: 700px) {
  .article-header h1 {
    width: 100%;
    padding-right: 0;
    line-height: 1.1;
    margin-bottom: 0.5em;
  }
  .article-header h3 {
    width: 100%;
    max-width: 100%;
  }
}

.article-header__image {
  margin-top: 60px;
}
@media only screen and (max-width: 1200px) {
  .article-header__image {
    margin-top: 20px;
  }
}

.article-header {
  width: 75%;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 1000px) {
  .article-header {
    width: 100%;
  }
}

.article-header__meta-container {
  margin-bottom: 40px;
  margin-top: -20px;
}
.article-header__meta-container span {
  font-size: 1.9rem;
  font-weight: 600;
  margin: 20px 0;
}

.article-header h1, .article-header h3, .article-header .news-tag, .article-header__meta-container {
  width: 100%;
  max-width: 100%;
  padding-left: 5%;
  padding-right: 5%;
}
@media only screen and (max-width: 1200px) {
  .article-header h1, .article-header h3, .article-header .news-tag, .article-header__meta-container {
    padding-left: 5%;
    padding-right: 5%;
    margin-left: auto;
    margin-right: auto;
    max-width: 800px;
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 1000px) {
  .article-header h1, .article-header h3, .article-header .news-tag, .article-header__meta-container {
    padding: 0;
    max-width: 75%;
  }
}
@media only screen and (max-width: 600px) {
  .article-header h1, .article-header h3, .article-header .news-tag, .article-header__meta-container {
    max-width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    margin-bottom: 20px;
  }
  .article-header h1 p, .article-header h3 p, .article-header .news-tag p, .article-header__meta-container p {
    margin: 0;
  }
}

.article-header .news-tag {
  margin-bottom: 30px;
}

h3.-align-right {
  margin-top: -20px;
}
@media only screen and (max-width: 1200px) {
  h3.-align-right {
    margin-top: -10px;
  }
}
@media only screen and (max-width: 600px) {
  h3.-align-right {
    margin-top: 0;
  }
}

.signup-active {
  position: absolute;
  padding-left: 25%;
  top: -40px;
}
@media only screen and (max-width: 1200px) {
  .signup-active {
    padding-left: 5%;
    padding-right: 5%;
    margin-left: auto;
    margin-right: auto;
    max-width: 800px;
    width: 100%;
    transform: translateX(-50%);
    left: 50%;
  }
}
@media only screen and (max-width: 600px) {
  .signup-active {
    padding: 0;
  }
}

@media only screen and (max-width: 1200px) {
  .section--single-article .article-header__image {
    margin-left: 0;
    margin-bottom: 50px;
  }
}
@media only screen and (max-width: 600px) {
  .section--single-article .article-header__image {
    margin-left: 0;
    margin-bottom: 30px;
    margin-top: 10px;
  }
}

.article-header--stacked {
  padding-bottom: 60px;
}
@media only screen and (max-width: 1200px) {
  .article-header--stacked {
    padding-bottom: 40px;
  }
}
.article-header--stacked h1 {
  width: 75%;
  max-width: 75%;
}
.article-header--stacked h3 {
  width: 75%;
  max-width: 75%;
}

.article-header--left-nudge {
  padding-left: 33.33%;
}
@media only screen and (max-width: 1000px) {
  .article-header--left-nudge {
    padding-left: 0;
  }
}
.article-header--left-nudge h1, .article-header--left-nudge h3 {
  width: 100%;
  max-width: 100%;
  padding: 0;
}

@media only screen and (max-width: 1440px) {
  .page-template-tapahtumat .article-header--left-nudge {
    padding-left: 30%;
  }
}
@media only screen and (max-width: 1200px) {
  .page-template-tapahtumat .article-header--left-nudge {
    padding-left: 0;
  }
}

@media only screen and (max-width: 1200px) {
  .section--index-page-header .article-header--left-nudge {
    padding-left: 0;
  }
}

.article-header--page h1 {
  width: 75%;
  max-width: 75%;
  padding: 0;
  margin: auto;
}

.S--past-event .signup-active .-signup, .S--past-event .meta-signup .-signup {
  display: none;
}

.single-post__s-bar-wrap {
  display: flex;
  position: relative;
}

.single-post-wrapper {
  margin-top: 40px;
  padding-top: 80px;
}
@media only screen and (max-width: 1200px) {
  .single-post-wrapper {
    padding-top: 40px;
    border: none;
    margin-top: 0;
    padding-top: 0;
  }
}

.single-post__meta {
  top: 0;
  left: 0;
  width: 20%;
  max-width: 20%;
  position: absolute;
  border-radius: 6px;
  padding: 20px;
  background: #F9F5FF;
}
.single-post__meta .inner {
  font-size: 1.8rem;
}
.single-post__meta .inner .-cat, .single-post__meta .inner .-date {
  padding: 20px 0;
  padding-top: 0;
}
.single-post__meta .inner .-cat {
  position: relative;
}
.single-post__meta span {
  font-size: 1.6rem;
  letter-spacing: normal;
}
.single-post__meta .meta-label {
  color: black;
  font-weight: 500;
  line-height: 1;
}

@media only screen and (max-width: 1600px) {
  .single-post__meta .-cat {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 1550px) {
  .single-post__meta {
    max-width: 22%;
    width: 22%;
  }
}
@media only screen and (max-width: 1200px) {
  .single-post__s-bar-wrap {
    display: block;
    position: relative;
  }

  .single-post__meta {
    position: relative;
    padding-right: 5%;
    padding-left: 5%;
    margin: auto;
    max-width: calc(800px);
    width: 100%;
  }
}
.single-post__meta--footer {
  position: relative;
  position: relative;
  width: 100%;
  max-width: 100%;
  margin-top: 40px;
  padding: 0 !important;
}
.single-post__meta--footer .inner {
  max-width: 100%;
  margin: auto;
  margin-bottom: 60px;
  padding-top: 10px;
  border-top: solid 1px rgba(60,56,48,0.2);
}
.single-post__meta--footer .-cat {
  position: relative;
}
.single-post__meta--footer .map-link {
  position: absolute;
  right: 0;
  top: 0;
  display: block;
  font-size: 1.2rem;
  background: none;
  border-radius: 4px;
  padding: 10px;
  text-align: right;
  padding-right: 0;
  color: #00ce83;
  margin: 0;
}
.single-post__meta--footer .capsule-wrap {
  margin-bottom: 30px;
}

.meta-label {
  display: block;
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 1px;
}

.meta-signup {
  padding: 4px;
}
@media only screen and (max-width: 1200px) {
  .meta-signup {
    border-bottom: solid 1px #c5c5c5;
  }
}

@media only screen and (min-width: 1200.11px) {
  .map-link {
    display: block;
    font-size: 1.2rem;
    margin-top: 5px;
    background: #f4efe8;
    /* max-width: 200px; */
    /* border: solid 1px #c3c3c3; */
    border-radius: 4px;
    padding: 10px;
    text-align: center;
    color: black;
  }
}
@media only screen and (max-width: 1200px) {
  .map-link {
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    font-size: 1.2rem;
    background: none;
    border-radius: 4px;
    padding: 10px;
    text-align: right;
    padding-right: 0;
    color: #00ce83;
    margin: 0;
  }
}

.single-post__content {
  width: 100%;
  padding-left: 25%;
  max-width: calc(800px + 25%);
}
@media only screen and (max-width: 1300px) {
  .single-post__content {
    padding-right: 5%;
  }
}
@media only screen and (max-width: 1200px) {
  .single-post__content {
    padding-right: 5%;
    padding-left: 5%;
    margin: auto;
    max-width: calc(800px);
    margin-top: 40px;
  }
}
@media only screen and (max-width: 600px) {
  .single-post__content {
    padding: 0;
    margin-top: 20px;
  }
}

.post-navigation .nav-links {
  margin-top: 60px;
  border-top: solid 1px #c5c5c5;
  font-family: "sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: 1.8rem;
}
.post-navigation .nav-links a {
  color: #3c3830 !important;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.post-navigation .nav-links .nav-previous a {
  padding-right: 20px;
}
.post-navigation .nav-links div {
  text-align: left;
  width: 50%;
}
.post-navigation .nav-links .nav-previous:before {
  content: "Edellinen artikkeli";
  display: block;
  font-size: 1.2rem;
  font-weight: 600;
  color: #808080;
}
.post-navigation .nav-links .nav-next:before {
  display: block;
  content: "Seuraava artikkeli";
  font-size: 1.2rem;
  font-weight: 600;
  color: #808080;
}

.single-post__content figure.size-full {
  margin-left: -50%;
  max-width: calc(100% + 50%);
}

.wp-block-table {
  margin: 4em 0;
  font-size: 1.6rem;
}
.wp-block-table td, .wp-block-table th {
  border: none;
}
.wp-block-table strong {
  font-weight: 600;
}

.wp-block-image figcaption {
  font-size: 1.6rem;
  margin-top: 1em;
  margin-bottom: 1.5em;
}
.module--archive-nav .nav-links {
  display: flex;
  justify-content: center;
  font-size: 2rem;
  padding-top: 40px;
}
.module--archive-nav .pagination .page-numbers {
  background: black;
  border-radius: 99px;
}
.module--archive-nav .page-numbers:not(.prev):not(.next) {
  background: none;
  color: black;
  opacity: 0.3;
}
.module--archive-nav .page-numbers.current {
  opacity: 0.7 !important;
}
.archive .header-block__txt p {
  max-width: 1000px;
}

.page-index {
  position: absolute;
  top: 0;
  right: 0;
  opacity: 0.5;
  -webkit-text-decoration: uppercase;
          text-decoration: uppercase;
}

.single-post--legacy {
  max-width: 1200px;
  margin: auto;
}
.single-post--legacy .article-meta {
  display: none;
}

@media only screen and (min-width: 1100.11px) {
  .module--article-feed .flx-container {
    display: flex;
  }
}
.module--article-feed .flx-container .cell {
  width: 50%;
}
@media only screen and (max-width: 1100px) {
  .module--article-feed .flx-container .cell {
    width: 100%;
    padding-left: 25%;
  }
}
@media only screen and (max-width: 800px) {
  .module--article-feed .flx-container .cell {
    width: 100%;
    padding-left: 20%;
  }
}
@media only screen and (max-width: 650px) {
  .module--article-feed .flx-container .cell {
    width: 100%;
    padding-left: 0;
  }
}

.article-feed__heading h1 {
  line-height: 80px;
}
@media only screen and (min-width: 1100.11px) and (max-width: 1300px) {
  .article-feed__heading h1 {
    font-size: 6vw;
  }
}
@media only screen and (max-width: 1100px) {
  .article-feed__heading h1 {
    position: relative;
    margin-bottom: 10px;
    line-height: 1;
  }
}

.article-feed__heading.-fake-heading {
  visibility: hidden;
  line-height: 0;
}

.article-feed-wrapper {
  border-top: solid 1px #B0B0B0;
  padding-top: 40px;
}

ul.article-feed__content {
  list-style: none;
  margin: 0;
}
ul.article-feed__content li {
  margin-bottom: 40px;
}

.news-feed-item {
  display: flex;
}

.news-feed-item__img {
  width: 25%;
  max-width: 33.33%;
  margin-right: 20px;
}
@media only screen and (max-width: 650px) {
  .news-feed-item__img {
    margin-right: 16px;
  }
}
.news-feed-item__img .image-aspect-box {
  padding-top: 100%;
}

.news-feed-item__content {
  cursor: pointer;
  flex-grow: 1;
  width: 75%;
  display: flex;
  flex-direction: column;
}
.news-feed-item__content:hover h5 {
  text-decoration: underline;
}
.news-feed-item__content h5 {
  margin-bottom: 0.8rem;
}
.news-feed-item__content p {
  font-size: 1.4rem;
}
.news-feed-item__content .meta {
  margin-bottom: 10px;
  display: flex;
  align-items: center;
}
.news-feed-item__content .tag {
  font-size: 1.3rem;
  background: #ffff22;
  color: black;
  padding: 6px;
  border-radius: 2px;
  line-height: 100%;
  width: 68px;
  min-width: 50px;
  text-align: center;
}
.news-feed-item__content .date {
  margin-left: 14px;
  font-size: 1.3rem;
  line-height: 1;
  font-weight: 500;
}
.news-feed-item__content .capsule-wrap {
  margin-top: 0;
}
.news-feed-item__content .basic-btn {
  font-size: 1.4rem;
}

.article-feed__cat-nav {
  display: flex;
  height: 80px;
  align-items: center;
  position: sticky;
  top: 0;
  z-index: 4;
  background: white;
}
.article-feed__cat-nav ul {
  list-style: none;
  margin: 0;
  display: flex;
}
.article-feed__cat-nav li {
  background: transparent;
  border: none;
  padding: 0.8rem 2.4rem;
  line-height: 1;
  border-radius: 0.4rem;
  transition: 0.25s;
}
.article-feed__cat-nav li.S-active__cat {
  background: #ffff22;
}

.article-feed__content {
  opacity: 1;
  transform: none;
  transition: 0.25s;
}

.S-animating--articles .article-feed__content {
  opacity: 0;
  transform: translateY(20px);
}

.section--bottom-cta {
  transition: 0.25s;
}

.S-animating--articles .section--bottom-cta {
  opacity: 0;
}

.btn--go-back {
  font-size: 1.1rem !important;
  margin: 0;
  font-weight: 500;
  padding: 6px 10px;
  min-width: 115px;
  text-align: center;
  margin-bottom: 40px;
  background: white;
  padding-left: 0;
  border: none;
  color: #858585;
  color: black;
}

.btn--go-back .basic-btn__icon {
  margin: 0;
  width: 12px;
  height: 12px;
  transform: rotate(180deg);
}

.btn--go-back .basic-btn__text {
  margin-left: 4px;
  text-transform: uppercase;
}

.btn--go-back:hover .basic-btn__text {
  transform: none;
  text-decoration: underline;
}
.btn--go-back:hover .basic-btn__icon {
  opacity: 1;
}

.section--single-post {
  padding-top: 40px;
}

.single-post__footer {
  margin-top: 100px;
  border-top: solid 1px #B0B0B0;
  padding-top: 40px;
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 700px) {
  .single-post__footer {
    margin-top: 80px;
  }
}
@media screen and (max-width: 550px) {
  .single-post__footer {
    margin-top: 60px;
  }
}

.single-post__base-container {
  max-width: 1060px;
}
@media screen and (max-width: 1999.9px) {
  .single-post__base-container {
    max-width: calc( 100% - 340px);
  }
}
@media screen and (max-width: 1100px) {
  .single-post__base-container {
    max-width: 760px;
  }
}
@media screen and (max-width: 700px) {
  .single-post__base-container {
    padding: 0 40px;
  }
}
@media screen and (max-width: 550px) {
  .single-post__base-container {
    padding: 0 16px;
  }
}

.module--single-post .entry-title {
  margin-bottom: 20px;
}
@media screen and (max-width: 1200px) {
  .module--single-post .entry-title {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 700px) {
  .module--single-post .entry-title {
    margin-bottom: 0.8rem;
  }
}

.module--single-post .entry-description p {
  font-size: 2.4rem;
  line-height: 1.2;
}
@media screen and (max-width: 1200px) {
  .module--single-post .entry-description p {
    font-size: 2rem;
    line-height: 1.2;
  }
}
@media screen and (max-width: 700px) {
  .module--single-post .entry-description p {
    font-size: 1.8rem;
    line-height: 1.2;
  }
}

.article-content {
  margin-top: 80px;
}
@media screen and (max-width: 1200px) {
  .article-content {
    margin-top: 60px;
  }
}
@media screen and (max-width: 700px) {
  .article-content {
    margin-top: 40px;
  }
}
.article-content p, .article-content h2, .article-content h3, .article-content h4, .article-content h5 {
  padding: 0 80px;
}
@media screen and (max-width: 1300px) {
  .article-content p, .article-content h2, .article-content h3, .article-content h4, .article-content h5 {
    padding: 0 60px;
  }
}
@media screen and (max-width: 1200px) {
  .article-content p, .article-content h2, .article-content h3, .article-content h4, .article-content h5 {
    padding: 0 40px;
  }
}
@media screen and (max-width: 1100px) {
  .article-content p, .article-content h2, .article-content h3, .article-content h4, .article-content h5 {
    padding: 0 40px;
  }
}
@media screen and (max-width: 700px) {
  .article-content p, .article-content h2, .article-content h3, .article-content h4, .article-content h5 {
    padding: 0 20px;
  }
}
@media screen and (max-width: 550px) {
  .article-content p, .article-content h2, .article-content h3, .article-content h4, .article-content h5 {
    padding: 0 16px;
  }
}
.article-content p {
  font-size: 1.6rem;
  line-height: 1.6;
}
@media screen and (max-width: 700px) {
  .article-content p {
    font-size: 1.4rem;
  }
}
.article-content h2, .article-content h3 {
  margin-bottom: 20px;
  margin-top: 40px;
}
@media screen and (max-width: 700px) {
  .article-content h2, .article-content h3 {
    margin-top: 30px;
    margin-bottom: 10px;
  }
}
.article-content h4, .article-content h5 {
  font-size: 2.6rem;
  margin-top: 1em;
  margin-bottom: 1em;
}
@media screen and (max-width: 700px) {
  .article-content h4, .article-content h5 {
    margin-top: 0.6em;
    margin-bottom: 0.6em;
  }
}

.wp-block-image {
  margin-bottom: 60px;
}
@media screen and (max-width: 1200px) {
  .wp-block-image {
    margin-bottom: 40px;
  }
}

.wp-block-column .wp-block-image {
  padding: 0;
}

article .article-body a {
  color: black;
}

article .article-body a:hover {
  color: black;
  text-decoration: underline;
}

.section--page-content h1 a, .section--page-content h2 a, .section--page-content h4 a, .section--page-content h5 a, .section--page-content li a, .section--page-content p a {
  color: black;
}

.section--page-content h1 a:hover, .section--page-content h2 a:hover, .section--page-content h4 a:hover, .section--page-content h5 a:hover, .section--page-content li a:hover, .section--page-content p a:hover {
  text-decoration: underline;
}

.share-list {
  display: flex;
  flex-direction: row;
}

.share-list a {
  border-radius: 100px;
  width: 30px;
  height: 30px;
  padding: 7px;
  margin: 10px;
  cursor: pointer;
  overflow: hidden;
  background: black !important;
}
.share-list a img {
  width: 100%;
  height: 100%;
  filter: invert(100%);
}

a.fb-h {
  background: #3B5998;
}

a.tw-h {
  background: #00acee;
}

a.li-h {
  background: #0077B5;
}

a.re-h {
  background: #FF5700;
}

a.pi-h {
  background: #c8232c;
}

.single-post__meta .share-list {
  display: flex;
  flex-direction: row;
  width: 100%;
  justify-content: between;
}
.single-post__meta .share-list a {
  margin: 10px 0;
  margin-right: 10px;
}

.article-body .share-buttons-container {
  display: block;
  margin: 30px 0;
  margin-top: 50px;
}
.article-body .meta-label {
  font-size: 1.6rem;
  color: black;
  font-weight: 600;
  line-height: 1;
}
.article-body a {
  margin: 10px 0;
  margin-right: 10px;
}

.share-buttons-container {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.module--numberlist .-inner {
  position: relative;
}
.module--numberlist .-number {
  position: absolute;
  top: -6px;
  left: -56px;
  font-family: "Golos Text", sans-serif;
  font-weight: 500;
  color: #6d0bff;
  background: #e9dbff;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  width: 40px;
  border-radius: 999px;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  .module--numberlist .-number {
    position: relative;
    margin-top: 20px;
    margin-bottom: 10px;
    top: 0;
    left: 0;
  }
}
.module--numberlist .-number .-number-inner {
  font-size: 2rem;
}

.section--basic .wp-block-quote {
  margin: 0;
}

/*--------------------------------------------------------------
# Global styles that appear on every page fo your site
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# CSS Grids and Containers
--------------------------------------------------------------*/
/*
  - Containers can be used anywhere for holding main content.
  - They have padding on both sides so on mobile the content wont hit the edges.
  - They have a max-width and are centered. They also have a width of 100% to work nicely inside flex items and grids.
  - It's best to keep containers surrounding content on their own div. Dont combine with grids and layouts in one div.
 */
/*------- Containers --------*/
.container {
  width: 100%;
  max-width: 1400px;
  max-width: var(--container);
  margin: auto;
  padding: 0 30px;
  padding: 0 var(--container-padding);
}

.container-left, .container-right {
  width: 100%;
  max-width: calc(1400px + ((100% - 1400px) / 2));
  max-width: calc(var(--container) + ((100% - var(--container)) / 2));
  margin: 0 auto 0 0;
  padding: 0 30px 0 0;
  padding: 0 var(--container-padding) 0 0;
}

.container-right {
  margin: 0 0 0 auto;
  padding: 0 0 0 30px;
  padding: 0 0 0 var(--container-padding);
}

.container-fluid {
  width: 100%;
  margin: auto;
  padding: 0 30px;
  padding: 0 var(--container-padding);
}

@media (min-width: 1200px) {
  .large-gap {
    grid-gap: 60px;
  }
}
/*------- Special Container Content For articles --------*/
/*
- Container-Content is meant to hold an article's content after the header.
- It's for actual words and makes sure the line is not too long
- It cleverly allows for items inside to go full width and "break out" with alignwide and alignfull
- The container itself has no max-width, instead its items within.
- Any items inside with full-width or .alignfull will NOT have a max-width and will fill page
- Dont surround container-content with a container or full items wont be full width!
*/
.container-content {
  padding: 0 30px;
  padding: 0 var(--container-padding);
  width: 100%;
}
.container-content > *:not(.alignwide):not(.alignfull):not(.full-width) {
  max-width: 70rem !important;
  max-width: var(--container-content) !important;
  margin-right: auto;
  margin-left: auto;
}
.container-content > .full-width, .container-content > .alignfull {
  width: auto;
  margin-left: calc(-1 * 30px);
  margin-left: calc(-1 * var(--container-padding));
  margin-right: calc(-1 * 30px);
  margin-right: calc(-1 * var(--container-padding));
}
.container-content > .alignwide {
  width: 100%;
  max-width: calc(1400px - (30px * 2));
  max-width: calc(var(--container) - (var(--container-padding) * 2));
}

/*------- Special exceptions for container contents padding  --------*/
.container .container-content, .container-fluid .container-content, .container-left .container-content, .container-right .container-content {
  padding-left: 0;
  padding-right: 0;
}
.container .container-content > .alignwide, .container-fluid .container-content > .alignwide, .container-left .container-content > .alignwide, .container-right .container-content > .alignwide {
  width: 100%;
  max-width: calc(100% - (30px * 2));
  max-width: calc(100% - (var(--container-padding) * 2));
}

.container-right .container-content > .full-width, .container-right .container-content > .alignfull {
  margin-right: 0;
}

.container-left .container-content > .full-width, .container-left .container-content > .alignfull {
  margin-left: 0;
}

/*--------------------------------------------------------------
# WP Align Wide Matches the size of a .container
--------------------------------------------------------------*/
.alignwide {
  width: calc(100% - (30px * 2));
  width: calc(100% - (var(--container-padding) * 2));
  max-width: calc(1400px - (30px * 2));
  max-width: calc(var(--container) - (var(--container-padding) * 2));
  margin-left: auto;
  margin-right: auto;
}

/*--------------------------------------------------------------
# CARD GRIDS
--------------------------------------------------------------*/
/*------- Grid Layouts --------*/
/*
- Simple Responsive grid of equal sized items
- Create your own responsive grid!
- Add @include grid($min-size-of-items);
- The default min size is 350
- Items grow if there is room to grow, or fall to next row fi there isnt.
 */
.card-grid {
  display: grid;
  --card-min: 250px;
  --card-max: 1fr;
  --card-type: auto-fit;
  grid-template-columns: repeat(var(--card-type), minmax(min(var(--card-min), 100%), var(--card-max)));
  grid-gap: 30px;
  grid-gap: var(--grid-gap);
  justify-content: center;
}
@media all and (-ms-high-contrast: none) {
  .card-grid {
    display: flex;
    flex-wrap: wrap;
  }
  .card-grid > * {
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: 0;
    min-width: calc(320px);
    margin: 15px;
    margin-top: 0;
    margin-bottom: 30px;
  }
  .card-grid.no-gutters {
    margin-left: 0;
    margin-right: 0;
  }
  .card-grid.no-gutters > * {
    margin: 0;
  }
  .conainer .card-grid, .container-fluid .card-grid, .container-content .card-grid {
    margin-left: calc(-1 * 30px);
    margin-left: calc(-1 * var(--gap));
    margin-right: calc(-1 * 30px);
    margin-right: calc(-1 * var(--gap));
  }
  .conainer .card-grid.no-gutters, .container-fluid .card-grid.no-gutters, .container-content .card-grid.no-gutters {
    margin-left: 0;
    margin-right: 0;
  }
}

.card-grid-fill {
  display: grid;
  --card-min: 250px;
  --card-max: 1fr;
  --card-type: auto-fill;
  grid-template-columns: repeat(var(--card-type), minmax(min(var(--card-min), 100%), var(--card-max)));
  grid-gap: 30px;
  grid-gap: var(--grid-gap);
  justify-content: center;
}
@media all and (-ms-high-contrast: none) {
  .card-grid-fill {
    display: flex;
    flex-wrap: wrap;
  }
  .card-grid-fill > * {
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: 0;
    min-width: calc(320px);
    margin: 15px;
    margin-top: 0;
    margin-bottom: 30px;
  }
  .card-grid-fill.no-gutters {
    margin-left: 0;
    margin-right: 0;
  }
  .card-grid-fill.no-gutters > * {
    margin: 0;
  }
  .conainer .card-grid-fill, .container-fluid .card-grid-fill, .container-content .card-grid-fill {
    margin-left: calc(-1 * 30px);
    margin-left: calc(-1 * var(--gap));
    margin-right: calc(-1 * 30px);
    margin-right: calc(-1 * var(--gap));
  }
  .conainer .card-grid-fill.no-gutters, .container-fluid .card-grid-fill.no-gutters, .container-content .card-grid-fill.no-gutters {
    margin-left: 0;
    margin-right: 0;
  }
}

.flex-card-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-left: -15px;
  margin-right: -15px;
}
.flex-card-grid > * {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: calc(320px);
  margin: 0 15px 30px 15px;
}
.flex-card-grid.no-gutters {
  margin-left: 0;
  margin-right: 0;
}
.flex-card-grid.no-gutters > * {
  margin: 0;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .flex-card-grid > * {
    flex-basis: auto;
    min-width: calc(320px);
  }
}

/*--------------------------------------------------------------
# 12 Column CSS Grids
--------------------------------------------------------------*/
.no-gutters {
  grid-gap: 0;
}

.grid, #page .wp-block-gallery {
  display: grid;
  grid-template-columns: repeat(12, minmax(1px, 1fr));
  grid-gap: min(30px, calc(100%/12));
  grid-gap: min(var(--grid-gap), calc(100%/12));
}
div .grid .span-1, div #page .wp-block-gallery .span-1, #page div .wp-block-gallery .span-1, .grid.span-all-1 > *, #page .span-all-1.wp-block-gallery > * {
  grid-column: span 1;
}
div .grid .span-2, div #page .wp-block-gallery .span-2, #page div .wp-block-gallery .span-2, .grid.span-all-2 > *, #page .span-all-2.wp-block-gallery > * {
  grid-column: span 2;
}
div .grid .span-3, div #page .wp-block-gallery .span-3, #page div .wp-block-gallery .span-3, .grid.span-all-3 > *, #page .span-all-3.wp-block-gallery > *, #page .wp-block-gallery.columns-4 > * {
  grid-column: span 3;
}
div .grid .span-4, div #page .wp-block-gallery .span-4, #page div .wp-block-gallery .span-4, .grid.span-all-4 > *, #page .span-all-4.wp-block-gallery > *, #page .wp-block-gallery.columns-3 > * {
  grid-column: span 4;
}
div .grid .span-5, div #page .wp-block-gallery .span-5, #page div .wp-block-gallery .span-5, .grid.span-all-5 > *, #page .span-all-5.wp-block-gallery > * {
  grid-column: span 5;
}
div .grid .span-6, div #page .wp-block-gallery .span-6, #page div .wp-block-gallery .span-6, .grid.span-all-6 > *, #page .span-all-6.wp-block-gallery > *, #page .wp-block-gallery.columns-2 > * {
  grid-column: span 6;
}
div .grid .span-7, div #page .wp-block-gallery .span-7, #page div .wp-block-gallery .span-7, .grid.span-all-7 > *, #page .span-all-7.wp-block-gallery > * {
  grid-column: span 7;
}
div .grid .span-8, div #page .wp-block-gallery .span-8, #page div .wp-block-gallery .span-8, .grid.span-all-8 > *, #page .span-all-8.wp-block-gallery > * {
  grid-column: span 8;
}
div .grid .span-9, div #page .wp-block-gallery .span-9, #page div .wp-block-gallery .span-9, .grid.span-all-9 > *, #page .span-all-9.wp-block-gallery > * {
  grid-column: span 9;
}
div .grid .span-10, div #page .wp-block-gallery .span-10, #page div .wp-block-gallery .span-10, .grid.span-all-10 > *, #page .span-all-10.wp-block-gallery > * {
  grid-column: span 10;
}
div .grid .span-11, div #page .wp-block-gallery .span-11, #page div .wp-block-gallery .span-11, .grid.span-all-11 > *, #page .span-all-11.wp-block-gallery > * {
  grid-column: span 11;
}
div .grid .span-12, div #page .wp-block-gallery .span-12, #page div .wp-block-gallery .span-12, .grid.span-all-12 > *, #page .span-all-12.wp-block-gallery > *, #page .wp-block-gallery.columns-1 > * {
  grid-column: span 12;
}

.span-full {
  grid-column: 1/-1;
  flex-basis: 100%;
}

/*------- Overriding spans at media sizes --------*/
@media (max-width: 1200px) {
  div .grid > .container-span-1, div #page .wp-block-gallery > .container-span-1, #page div .wp-block-gallery > .container-span-1, .grid.container-span-all-1 > *, #page .container-span-all-1.wp-block-gallery > * {
    grid-column: span 1;
  }
  div .grid > .container-span-2, div #page .wp-block-gallery > .container-span-2, #page div .wp-block-gallery > .container-span-2, .grid.container-span-all-2 > *, #page .container-span-all-2.wp-block-gallery > * {
    grid-column: span 2;
  }
  div .grid > .container-span-3, div #page .wp-block-gallery > .container-span-3, #page div .wp-block-gallery > .container-span-3, .grid.container-span-all-3 > *, #page .container-span-all-3.wp-block-gallery > * {
    grid-column: span 3;
  }
  div .grid > .container-span-4, div #page .wp-block-gallery > .container-span-4, #page div .wp-block-gallery > .container-span-4, .grid.container-span-all-4 > *, #page .container-span-all-4.wp-block-gallery > * {
    grid-column: span 4;
  }
  div .grid > .container-span-5, div #page .wp-block-gallery > .container-span-5, #page div .wp-block-gallery > .container-span-5, .grid.container-span-all-5 > *, #page .container-span-all-5.wp-block-gallery > * {
    grid-column: span 5;
  }
  div .grid > .container-span-6, div #page .wp-block-gallery > .container-span-6, #page div .wp-block-gallery > .container-span-6, .grid.container-span-all-6 > *, #page .container-span-all-6.wp-block-gallery > * {
    grid-column: span 6;
  }
  div .grid > .container-span-7, div #page .wp-block-gallery > .container-span-7, #page div .wp-block-gallery > .container-span-7, .grid.container-span-all-7 > *, #page .container-span-all-7.wp-block-gallery > * {
    grid-column: span 7;
  }
  div .grid > .container-span-8, div #page .wp-block-gallery > .container-span-8, #page div .wp-block-gallery > .container-span-8, .grid.container-span-all-8 > *, #page .container-span-all-8.wp-block-gallery > * {
    grid-column: span 8;
  }
  div .grid > .container-span-9, div #page .wp-block-gallery > .container-span-9, #page div .wp-block-gallery > .container-span-9, .grid.container-span-all-9 > *, #page .container-span-all-9.wp-block-gallery > * {
    grid-column: span 9;
  }
  div .grid > .container-span-10, div #page .wp-block-gallery > .container-span-10, #page div .wp-block-gallery > .container-span-10, .grid.container-span-all-10 > *, #page .container-span-all-10.wp-block-gallery > * {
    grid-column: span 10;
  }
  div .grid > .container-span-11, div #page .wp-block-gallery > .container-span-11, #page div .wp-block-gallery > .container-span-11, .grid.container-span-all-11 > *, #page .container-span-all-11.wp-block-gallery > * {
    grid-column: span 11;
  }
  div .grid > .container-span-12, div #page .wp-block-gallery > .container-span-12, #page div .wp-block-gallery > .container-span-12, .grid.container-span-all-12 > *, #page .container-span-all-12.wp-block-gallery > * {
    grid-column: span 12;
  }
}
@media (max-width: 1030px) {
  div .grid > .large-span-1, div #page .wp-block-gallery > .large-span-1, #page div .wp-block-gallery > .large-span-1, .grid.large-span-all-1 > *, #page .large-span-all-1.wp-block-gallery > * {
    grid-column: span 1;
  }
  div .grid > .large-span-2, div #page .wp-block-gallery > .large-span-2, #page div .wp-block-gallery > .large-span-2, .grid.large-span-all-2 > *, #page .large-span-all-2.wp-block-gallery > * {
    grid-column: span 2;
  }
  div .grid > .large-span-3, div #page .wp-block-gallery > .large-span-3, #page div .wp-block-gallery > .large-span-3, .grid.large-span-all-3 > *, #page .large-span-all-3.wp-block-gallery > * {
    grid-column: span 3;
  }
  div .grid > .large-span-4, div #page .wp-block-gallery > .large-span-4, #page div .wp-block-gallery > .large-span-4, .grid.large-span-all-4 > *, #page .large-span-all-4.wp-block-gallery > * {
    grid-column: span 4;
  }
  div .grid > .large-span-5, div #page .wp-block-gallery > .large-span-5, #page div .wp-block-gallery > .large-span-5, .grid.large-span-all-5 > *, #page .large-span-all-5.wp-block-gallery > * {
    grid-column: span 5;
  }
  div .grid > .large-span-6, div #page .wp-block-gallery > .large-span-6, #page div .wp-block-gallery > .large-span-6, .grid.large-span-all-6 > *, #page .large-span-all-6.wp-block-gallery > * {
    grid-column: span 6;
  }
  div .grid > .large-span-7, div #page .wp-block-gallery > .large-span-7, #page div .wp-block-gallery > .large-span-7, .grid.large-span-all-7 > *, #page .large-span-all-7.wp-block-gallery > * {
    grid-column: span 7;
  }
  div .grid > .large-span-8, div #page .wp-block-gallery > .large-span-8, #page div .wp-block-gallery > .large-span-8, .grid.large-span-all-8 > *, #page .large-span-all-8.wp-block-gallery > * {
    grid-column: span 8;
  }
  div .grid > .large-span-9, div #page .wp-block-gallery > .large-span-9, #page div .wp-block-gallery > .large-span-9, .grid.large-span-all-9 > *, #page .large-span-all-9.wp-block-gallery > * {
    grid-column: span 9;
  }
  div .grid > .large-span-10, div #page .wp-block-gallery > .large-span-10, #page div .wp-block-gallery > .large-span-10, .grid.large-span-all-10 > *, #page .large-span-all-10.wp-block-gallery > * {
    grid-column: span 10;
  }
  div .grid > .large-span-11, div #page .wp-block-gallery > .large-span-11, #page div .wp-block-gallery > .large-span-11, .grid.large-span-all-11 > *, #page .large-span-all-11.wp-block-gallery > * {
    grid-column: span 11;
  }
  div .grid > .large-span-12, div #page .wp-block-gallery > .large-span-12, #page div .wp-block-gallery > .large-span-12, .grid.large-span-all-12 > *, #page .large-span-all-12.wp-block-gallery > * {
    grid-column: span 12;
  }
}
@media (max-width: 768px) {
  div .grid > .medium-span-1, div #page .wp-block-gallery > .medium-span-1, #page div .wp-block-gallery > .medium-span-1, .grid.medium-span-all-1 > *, #page .medium-span-all-1.wp-block-gallery > * {
    grid-column: span 1;
  }
  div .grid > .medium-span-2, div #page .wp-block-gallery > .medium-span-2, #page div .wp-block-gallery > .medium-span-2, .grid.medium-span-all-2 > *, #page .medium-span-all-2.wp-block-gallery > * {
    grid-column: span 2;
  }
  div .grid > .medium-span-3, div #page .wp-block-gallery > .medium-span-3, #page div .wp-block-gallery > .medium-span-3, .grid.medium-span-all-3 > *, #page .medium-span-all-3.wp-block-gallery > * {
    grid-column: span 3;
  }
  div .grid > .medium-span-4, div #page .wp-block-gallery > .medium-span-4, #page div .wp-block-gallery > .medium-span-4, .grid.medium-span-all-4 > *, #page .medium-span-all-4.wp-block-gallery > * {
    grid-column: span 4;
  }
  div .grid > .medium-span-5, div #page .wp-block-gallery > .medium-span-5, #page div .wp-block-gallery > .medium-span-5, .grid.medium-span-all-5 > *, #page .medium-span-all-5.wp-block-gallery > * {
    grid-column: span 5;
  }
  div .grid > .medium-span-6, div #page .wp-block-gallery > .medium-span-6, #page div .wp-block-gallery > .medium-span-6, .grid.medium-span-all-6 > *, #page .medium-span-all-6.wp-block-gallery > * {
    grid-column: span 6;
  }
  div .grid > .medium-span-7, div #page .wp-block-gallery > .medium-span-7, #page div .wp-block-gallery > .medium-span-7, .grid.medium-span-all-7 > *, #page .medium-span-all-7.wp-block-gallery > * {
    grid-column: span 7;
  }
  div .grid > .medium-span-8, div #page .wp-block-gallery > .medium-span-8, #page div .wp-block-gallery > .medium-span-8, .grid.medium-span-all-8 > *, #page .medium-span-all-8.wp-block-gallery > * {
    grid-column: span 8;
  }
  div .grid > .medium-span-9, div #page .wp-block-gallery > .medium-span-9, #page div .wp-block-gallery > .medium-span-9, .grid.medium-span-all-9 > *, #page .medium-span-all-9.wp-block-gallery > * {
    grid-column: span 9;
  }
  div .grid > .medium-span-10, div #page .wp-block-gallery > .medium-span-10, #page div .wp-block-gallery > .medium-span-10, .grid.medium-span-all-10 > *, #page .medium-span-all-10.wp-block-gallery > * {
    grid-column: span 10;
  }
  div .grid > .medium-span-11, div #page .wp-block-gallery > .medium-span-11, #page div .wp-block-gallery > .medium-span-11, .grid.medium-span-all-11 > *, #page .medium-span-all-11.wp-block-gallery > * {
    grid-column: span 11;
  }
  div .grid > .medium-span-12, div #page .wp-block-gallery > .medium-span-12, #page div .wp-block-gallery > .medium-span-12, .grid.medium-span-all-12 > *, #page .medium-span-all-12.wp-block-gallery > * {
    grid-column: span 12;
  }
}
@media (max-width: 576px) {
  div.site .grid > *, div.site #page .wp-block-gallery > *, #page div.site .wp-block-gallery > * {
    grid-column: 1/-1;
  }
  div .grid > .small-span-1, div #page .wp-block-gallery > .small-span-1, #page div .wp-block-gallery > .small-span-1, div .grid.small-span-all-1 > *, div #page .small-span-all-1.wp-block-gallery > *, #page div .small-span-all-1.wp-block-gallery > * {
    grid-column: span 1;
  }
  div .grid > .small-span-2, div #page .wp-block-gallery > .small-span-2, #page div .wp-block-gallery > .small-span-2, div .grid.small-span-all-2 > *, div #page .small-span-all-2.wp-block-gallery > *, #page div .small-span-all-2.wp-block-gallery > * {
    grid-column: span 2;
  }
  div .grid > .small-span-3, div #page .wp-block-gallery > .small-span-3, #page div .wp-block-gallery > .small-span-3, div .grid.small-span-all-3 > *, div #page .small-span-all-3.wp-block-gallery > *, #page div .small-span-all-3.wp-block-gallery > * {
    grid-column: span 3;
  }
  div .grid > .small-span-4, div #page .wp-block-gallery > .small-span-4, #page div .wp-block-gallery > .small-span-4, div .grid.small-span-all-4 > *, div #page .small-span-all-4.wp-block-gallery > *, #page div .small-span-all-4.wp-block-gallery > * {
    grid-column: span 4;
  }
  div .grid > .small-span-5, div #page .wp-block-gallery > .small-span-5, #page div .wp-block-gallery > .small-span-5, div .grid.small-span-all-5 > *, div #page .small-span-all-5.wp-block-gallery > *, #page div .small-span-all-5.wp-block-gallery > * {
    grid-column: span 5;
  }
  div .grid > .small-span-6, div #page .wp-block-gallery > .small-span-6, #page div .wp-block-gallery > .small-span-6, div .grid.small-span-all-6 > *, div #page .small-span-all-6.wp-block-gallery > *, #page div .small-span-all-6.wp-block-gallery > * {
    grid-column: span 6;
  }
  div .grid > .small-span-7, div #page .wp-block-gallery > .small-span-7, #page div .wp-block-gallery > .small-span-7, div .grid.small-span-all-7 > *, div #page .small-span-all-7.wp-block-gallery > *, #page div .small-span-all-7.wp-block-gallery > * {
    grid-column: span 7;
  }
  div .grid > .small-span-8, div #page .wp-block-gallery > .small-span-8, #page div .wp-block-gallery > .small-span-8, div .grid.small-span-all-8 > *, div #page .small-span-all-8.wp-block-gallery > *, #page div .small-span-all-8.wp-block-gallery > * {
    grid-column: span 8;
  }
  div .grid > .small-span-9, div #page .wp-block-gallery > .small-span-9, #page div .wp-block-gallery > .small-span-9, div .grid.small-span-all-9 > *, div #page .small-span-all-9.wp-block-gallery > *, #page div .small-span-all-9.wp-block-gallery > * {
    grid-column: span 9;
  }
  div .grid > .small-span-10, div #page .wp-block-gallery > .small-span-10, #page div .wp-block-gallery > .small-span-10, div .grid.small-span-all-10 > *, div #page .small-span-all-10.wp-block-gallery > *, #page div .small-span-all-10.wp-block-gallery > * {
    grid-column: span 10;
  }
  div .grid > .small-span-11, div #page .wp-block-gallery > .small-span-11, #page div .wp-block-gallery > .small-span-11, div .grid.small-span-all-11 > *, div #page .small-span-all-11.wp-block-gallery > *, #page div .small-span-all-11.wp-block-gallery > * {
    grid-column: span 11;
  }
  div .grid > .small-span-12, div #page .wp-block-gallery > .small-span-12, #page div .wp-block-gallery > .small-span-12, div .grid.small-span-all-12 > *, div #page .small-span-all-12.wp-block-gallery > *, #page div .small-span-all-12.wp-block-gallery > * {
    grid-column: span 12;
  }
}

/*--------------------------------------------------------------
# Flexbox grids. 99% same as css grid
--------------------------------------------------------------*/
.container.flex:not(.no-gutters), .container.wp-block-file:not(.no-gutters), .container-fluid.flex:not(.no-gutters), .container-fluid.wp-block-file:not(.no-gutters), .container-content.flex:not(.no-gutters), .container-content.wp-block-file:not(.no-gutters) {
  padding: 0 calc(30px / 2);
  padding: 0 calc(var(--container-padding) / 2);
  margin: auto;
}
.container.flex.no-gutters, .container.no-gutters.wp-block-file, .container-fluid.flex.no-gutters, .container-fluid.no-gutters.wp-block-file, .container-content.flex.no-gutters, .container-content.no-gutters.wp-block-file {
  margin: auto;
}

.container-left.flex:not(.no-gutters), .container-left.wp-block-file:not(.no-gutters) {
  padding-right: calc(30px / 2);
  padding-right: calc(var(--container-padding) / 2);
  margin: 0 auto 0 0;
}
.container-left.flex.no-gutters, .container-left.no-gutters.wp-block-file {
  margin: 0 auto 0 0;
}

.container-right.flex:not(.no-gutters), .container-right.wp-block-file:not(.no-gutters) {
  padding-left: calc(30px / 2);
  padding-left: calc(var(--container-padding) / 2);
  margin: 0 0 0 auto;
}
.container-right.flex.no-gutters, .container-right.no-gutters.wp-block-file {
  margin: 0 0 0 auto;
}

/*--------------------------------------------------------------
# Flex grid
--------------------------------------------------------------*/
.flex, .wp-block-file, .flex-grid {
  display: flex;
  margin-left: calc(-1 * calc(30px / 2));
  margin-left: calc(-1 * var(--flex-gap));
  margin-right: calc(-1 * calc(30px / 2));
  margin-right: calc(-1 * var(--flex-gap));
}
.flex > *, .wp-block-file > *, .flex-grid > * {
  margin-right: calc(30px / 2);
  margin-right: var(--flex-gap);
  margin-left: calc(30px / 2);
  margin-left: var(--flex-gap);
  flex: 1;
}
.flex > .no-gutters, .wp-block-file > .no-gutters, .flex-grid > .no-gutters {
  margin-left: 0;
  margin-right: 0;
}
div .flex .span-1, div .wp-block-file .span-1, .flex.span-all-1 > *, .span-all-1.wp-block-file > *, div .flex-grid .span-1, .flex-grid.span-all-1 > * {
  flex-basis: calc(8.3333333333% - 30px);
  flex-basis: calc(8.3333333333% - var(--grid-gap));
}
div .flex > .span-1, div .wp-block-file > .span-1, div .flex-grid > .span-1 {
  flex-grow: 0;
  flex-shrink: 0;
}
div .flex .span-2, div .wp-block-file .span-2, .flex.span-all-2 > *, .span-all-2.wp-block-file > *, div .flex-grid .span-2, .flex-grid.span-all-2 > * {
  flex-basis: calc(16.6666666667% - 30px);
  flex-basis: calc(16.6666666667% - var(--grid-gap));
}
div .flex > .span-2, div .wp-block-file > .span-2, div .flex-grid > .span-2 {
  flex-grow: 0;
  flex-shrink: 0;
}
div .flex .span-3, div .wp-block-file .span-3, .flex.span-all-3 > *, .span-all-3.wp-block-file > *, #page .flex.wp-block-gallery.columns-4 > *, #page .wp-block-file.wp-block-gallery.columns-4 > *, div .flex-grid .span-3, .flex-grid.span-all-3 > *, #page .flex-grid.wp-block-gallery.columns-4 > * {
  flex-basis: calc(25% - 30px);
  flex-basis: calc(25% - var(--grid-gap));
}
div .flex > .span-3, div .wp-block-file > .span-3, div .flex-grid > .span-3 {
  flex-grow: 0;
  flex-shrink: 0;
}
div .flex .span-4, div .wp-block-file .span-4, .flex.span-all-4 > *, .span-all-4.wp-block-file > *, #page .flex.wp-block-gallery.columns-3 > *, #page .wp-block-file.wp-block-gallery.columns-3 > *, div .flex-grid .span-4, .flex-grid.span-all-4 > *, #page .flex-grid.wp-block-gallery.columns-3 > * {
  flex-basis: calc(33.3333333333% - 30px);
  flex-basis: calc(33.3333333333% - var(--grid-gap));
}
div .flex > .span-4, div .wp-block-file > .span-4, div .flex-grid > .span-4 {
  flex-grow: 0;
  flex-shrink: 0;
}
div .flex .span-5, div .wp-block-file .span-5, .flex.span-all-5 > *, .span-all-5.wp-block-file > *, div .flex-grid .span-5, .flex-grid.span-all-5 > * {
  flex-basis: calc(41.6666666667% - 30px);
  flex-basis: calc(41.6666666667% - var(--grid-gap));
}
div .flex > .span-5, div .wp-block-file > .span-5, div .flex-grid > .span-5 {
  flex-grow: 0;
  flex-shrink: 0;
}
div .flex .span-6, div .wp-block-file .span-6, .flex.span-all-6 > *, .span-all-6.wp-block-file > *, #page .flex.wp-block-gallery.columns-2 > *, #page .wp-block-file.wp-block-gallery.columns-2 > *, div .flex-grid .span-6, .flex-grid.span-all-6 > *, #page .flex-grid.wp-block-gallery.columns-2 > * {
  flex-basis: calc(50% - 30px);
  flex-basis: calc(50% - var(--grid-gap));
}
div .flex > .span-6, div .wp-block-file > .span-6, div .flex-grid > .span-6 {
  flex-grow: 0;
  flex-shrink: 0;
}
div .flex .span-7, div .wp-block-file .span-7, .flex.span-all-7 > *, .span-all-7.wp-block-file > *, div .flex-grid .span-7, .flex-grid.span-all-7 > * {
  flex-basis: calc(58.3333333333% - 30px);
  flex-basis: calc(58.3333333333% - var(--grid-gap));
}
div .flex > .span-7, div .wp-block-file > .span-7, div .flex-grid > .span-7 {
  flex-grow: 0;
  flex-shrink: 0;
}
div .flex .span-8, div .wp-block-file .span-8, .flex.span-all-8 > *, .span-all-8.wp-block-file > *, div .flex-grid .span-8, .flex-grid.span-all-8 > * {
  flex-basis: calc(66.6666666667% - 30px);
  flex-basis: calc(66.6666666667% - var(--grid-gap));
}
div .flex > .span-8, div .wp-block-file > .span-8, div .flex-grid > .span-8 {
  flex-grow: 0;
  flex-shrink: 0;
}
div .flex .span-9, div .wp-block-file .span-9, .flex.span-all-9 > *, .span-all-9.wp-block-file > *, div .flex-grid .span-9, .flex-grid.span-all-9 > * {
  flex-basis: calc(75% - 30px);
  flex-basis: calc(75% - var(--grid-gap));
}
div .flex > .span-9, div .wp-block-file > .span-9, div .flex-grid > .span-9 {
  flex-grow: 0;
  flex-shrink: 0;
}
div .flex .span-10, div .wp-block-file .span-10, .flex.span-all-10 > *, .span-all-10.wp-block-file > *, div .flex-grid .span-10, .flex-grid.span-all-10 > * {
  flex-basis: calc(83.3333333333% - 30px);
  flex-basis: calc(83.3333333333% - var(--grid-gap));
}
div .flex > .span-10, div .wp-block-file > .span-10, div .flex-grid > .span-10 {
  flex-grow: 0;
  flex-shrink: 0;
}
div .flex .span-11, div .wp-block-file .span-11, .flex.span-all-11 > *, .span-all-11.wp-block-file > *, div .flex-grid .span-11, .flex-grid.span-all-11 > * {
  flex-basis: calc(91.6666666667% - 30px);
  flex-basis: calc(91.6666666667% - var(--grid-gap));
}
div .flex > .span-11, div .wp-block-file > .span-11, div .flex-grid > .span-11 {
  flex-grow: 0;
  flex-shrink: 0;
}
div .flex .span-12, div .wp-block-file .span-12, .flex.span-all-12 > *, .span-all-12.wp-block-file > *, #page .flex.wp-block-gallery.columns-1 > *, #page .wp-block-file.wp-block-gallery.columns-1 > *, div .flex-grid .span-12, .flex-grid.span-all-12 > *, #page .flex-grid.wp-block-gallery.columns-1 > * {
  flex-basis: calc(100% - 30px);
  flex-basis: calc(100% - var(--grid-gap));
}
div .flex > .span-12, div .wp-block-file > .span-12, div .flex-grid > .span-12 {
  flex-grow: 0;
  flex-shrink: 0;
}
.flex.no-gutters, .no-gutters.wp-block-file, .flex-grid.no-gutters {
  margin-left: 0;
  margin-right: 0;
}
.flex.no-gutters > *, .no-gutters.wp-block-file > *, .flex-grid.no-gutters > * {
  margin: 0;
  --grid-gap: 0px;
}

.flex-grid {
  flex-wrap: wrap;
}
.flex-grid > * {
  margin-bottom: 30px;
  margin-bottom: var(--grid-gap);
}

#page .no-wrap {
  flex-wrap: nowrap;
}

/*------- Span sizes for flexbox grids --------*/
@media (max-width: 1200px) {
  div .flex-grid > .container-span-1, .flex-grid.container-span-all-1 > *, div .flex > .container-span-1, div .wp-block-file > .container-span-1, .flex.container-span-all-1 > *, .container-span-all-1.wp-block-file > * {
    flex-basis: calc(8.3333333333% - 30px);
    flex-basis: calc(8.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .container-span-1, div .flex > .container-span-1, div .wp-block-file > .container-span-1 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .container-span-2, .flex-grid.container-span-all-2 > *, div .flex > .container-span-2, div .wp-block-file > .container-span-2, .flex.container-span-all-2 > *, .container-span-all-2.wp-block-file > * {
    flex-basis: calc(16.6666666667% - 30px);
    flex-basis: calc(16.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .container-span-2, div .flex > .container-span-2, div .wp-block-file > .container-span-2 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .container-span-3, .flex-grid.container-span-all-3 > *, div .flex > .container-span-3, div .wp-block-file > .container-span-3, .flex.container-span-all-3 > *, .container-span-all-3.wp-block-file > * {
    flex-basis: calc(25% - 30px);
    flex-basis: calc(25% - var(--grid-gap));
  }
  div .flex-grid > .container-span-3, div .flex > .container-span-3, div .wp-block-file > .container-span-3 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .container-span-4, .flex-grid.container-span-all-4 > *, div .flex > .container-span-4, div .wp-block-file > .container-span-4, .flex.container-span-all-4 > *, .container-span-all-4.wp-block-file > * {
    flex-basis: calc(33.3333333333% - 30px);
    flex-basis: calc(33.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .container-span-4, div .flex > .container-span-4, div .wp-block-file > .container-span-4 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .container-span-5, .flex-grid.container-span-all-5 > *, div .flex > .container-span-5, div .wp-block-file > .container-span-5, .flex.container-span-all-5 > *, .container-span-all-5.wp-block-file > * {
    flex-basis: calc(41.6666666667% - 30px);
    flex-basis: calc(41.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .container-span-5, div .flex > .container-span-5, div .wp-block-file > .container-span-5 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .container-span-6, .flex-grid.container-span-all-6 > *, div .flex > .container-span-6, div .wp-block-file > .container-span-6, .flex.container-span-all-6 > *, .container-span-all-6.wp-block-file > * {
    flex-basis: calc(50% - 30px);
    flex-basis: calc(50% - var(--grid-gap));
  }
  div .flex-grid > .container-span-6, div .flex > .container-span-6, div .wp-block-file > .container-span-6 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .container-span-7, .flex-grid.container-span-all-7 > *, div .flex > .container-span-7, div .wp-block-file > .container-span-7, .flex.container-span-all-7 > *, .container-span-all-7.wp-block-file > * {
    flex-basis: calc(58.3333333333% - 30px);
    flex-basis: calc(58.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .container-span-7, div .flex > .container-span-7, div .wp-block-file > .container-span-7 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .container-span-8, .flex-grid.container-span-all-8 > *, div .flex > .container-span-8, div .wp-block-file > .container-span-8, .flex.container-span-all-8 > *, .container-span-all-8.wp-block-file > * {
    flex-basis: calc(66.6666666667% - 30px);
    flex-basis: calc(66.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .container-span-8, div .flex > .container-span-8, div .wp-block-file > .container-span-8 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .container-span-9, .flex-grid.container-span-all-9 > *, div .flex > .container-span-9, div .wp-block-file > .container-span-9, .flex.container-span-all-9 > *, .container-span-all-9.wp-block-file > * {
    flex-basis: calc(75% - 30px);
    flex-basis: calc(75% - var(--grid-gap));
  }
  div .flex-grid > .container-span-9, div .flex > .container-span-9, div .wp-block-file > .container-span-9 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .container-span-10, .flex-grid.container-span-all-10 > *, div .flex > .container-span-10, div .wp-block-file > .container-span-10, .flex.container-span-all-10 > *, .container-span-all-10.wp-block-file > * {
    flex-basis: calc(83.3333333333% - 30px);
    flex-basis: calc(83.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .container-span-10, div .flex > .container-span-10, div .wp-block-file > .container-span-10 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .container-span-11, .flex-grid.container-span-all-11 > *, div .flex > .container-span-11, div .wp-block-file > .container-span-11, .flex.container-span-all-11 > *, .container-span-all-11.wp-block-file > * {
    flex-basis: calc(91.6666666667% - 30px);
    flex-basis: calc(91.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .container-span-11, div .flex > .container-span-11, div .wp-block-file > .container-span-11 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .container-span-12, .flex-grid.container-span-all-12 > *, div .flex > .container-span-12, div .wp-block-file > .container-span-12, .flex.container-span-all-12 > *, .container-span-all-12.wp-block-file > * {
    flex-basis: calc(100% - 30px);
    flex-basis: calc(100% - var(--grid-gap));
  }
  div .flex-grid > .container-span-12, div .flex > .container-span-12, div .wp-block-file > .container-span-12 {
    flex-grow: 0;
    flex-shrink: 0;
  }
}
@media (max-width: 1030px) {
  div .flex-grid > .large-span-1, .flex-grid.large-span-all-1 > *, div .flex > .large-span-1, div .wp-block-file > .large-span-1, .flex.large-span-all-1 > *, .large-span-all-1.wp-block-file > * {
    flex-basis: calc(8.3333333333% - 30px);
    flex-basis: calc(8.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .large-span-1, div .flex > .large-span-1, div .wp-block-file > .large-span-1 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .large-span-2, .flex-grid.large-span-all-2 > *, div .flex > .large-span-2, div .wp-block-file > .large-span-2, .flex.large-span-all-2 > *, .large-span-all-2.wp-block-file > * {
    flex-basis: calc(16.6666666667% - 30px);
    flex-basis: calc(16.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .large-span-2, div .flex > .large-span-2, div .wp-block-file > .large-span-2 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .large-span-3, .flex-grid.large-span-all-3 > *, div .flex > .large-span-3, div .wp-block-file > .large-span-3, .flex.large-span-all-3 > *, .large-span-all-3.wp-block-file > * {
    flex-basis: calc(25% - 30px);
    flex-basis: calc(25% - var(--grid-gap));
  }
  div .flex-grid > .large-span-3, div .flex > .large-span-3, div .wp-block-file > .large-span-3 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .large-span-4, .flex-grid.large-span-all-4 > *, div .flex > .large-span-4, div .wp-block-file > .large-span-4, .flex.large-span-all-4 > *, .large-span-all-4.wp-block-file > * {
    flex-basis: calc(33.3333333333% - 30px);
    flex-basis: calc(33.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .large-span-4, div .flex > .large-span-4, div .wp-block-file > .large-span-4 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .large-span-5, .flex-grid.large-span-all-5 > *, div .flex > .large-span-5, div .wp-block-file > .large-span-5, .flex.large-span-all-5 > *, .large-span-all-5.wp-block-file > * {
    flex-basis: calc(41.6666666667% - 30px);
    flex-basis: calc(41.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .large-span-5, div .flex > .large-span-5, div .wp-block-file > .large-span-5 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .large-span-6, .flex-grid.large-span-all-6 > *, div .flex > .large-span-6, div .wp-block-file > .large-span-6, .flex.large-span-all-6 > *, .large-span-all-6.wp-block-file > * {
    flex-basis: calc(50% - 30px);
    flex-basis: calc(50% - var(--grid-gap));
  }
  div .flex-grid > .large-span-6, div .flex > .large-span-6, div .wp-block-file > .large-span-6 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .large-span-7, .flex-grid.large-span-all-7 > *, div .flex > .large-span-7, div .wp-block-file > .large-span-7, .flex.large-span-all-7 > *, .large-span-all-7.wp-block-file > * {
    flex-basis: calc(58.3333333333% - 30px);
    flex-basis: calc(58.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .large-span-7, div .flex > .large-span-7, div .wp-block-file > .large-span-7 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .large-span-8, .flex-grid.large-span-all-8 > *, div .flex > .large-span-8, div .wp-block-file > .large-span-8, .flex.large-span-all-8 > *, .large-span-all-8.wp-block-file > * {
    flex-basis: calc(66.6666666667% - 30px);
    flex-basis: calc(66.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .large-span-8, div .flex > .large-span-8, div .wp-block-file > .large-span-8 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .large-span-9, .flex-grid.large-span-all-9 > *, div .flex > .large-span-9, div .wp-block-file > .large-span-9, .flex.large-span-all-9 > *, .large-span-all-9.wp-block-file > * {
    flex-basis: calc(75% - 30px);
    flex-basis: calc(75% - var(--grid-gap));
  }
  div .flex-grid > .large-span-9, div .flex > .large-span-9, div .wp-block-file > .large-span-9 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .large-span-10, .flex-grid.large-span-all-10 > *, div .flex > .large-span-10, div .wp-block-file > .large-span-10, .flex.large-span-all-10 > *, .large-span-all-10.wp-block-file > * {
    flex-basis: calc(83.3333333333% - 30px);
    flex-basis: calc(83.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .large-span-10, div .flex > .large-span-10, div .wp-block-file > .large-span-10 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .large-span-11, .flex-grid.large-span-all-11 > *, div .flex > .large-span-11, div .wp-block-file > .large-span-11, .flex.large-span-all-11 > *, .large-span-all-11.wp-block-file > * {
    flex-basis: calc(91.6666666667% - 30px);
    flex-basis: calc(91.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .large-span-11, div .flex > .large-span-11, div .wp-block-file > .large-span-11 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .large-span-12, .flex-grid.large-span-all-12 > *, div .flex > .large-span-12, div .wp-block-file > .large-span-12, .flex.large-span-all-12 > *, .large-span-all-12.wp-block-file > * {
    flex-basis: calc(100% - 30px);
    flex-basis: calc(100% - var(--grid-gap));
  }
  div .flex-grid > .large-span-12, div .flex > .large-span-12, div .wp-block-file > .large-span-12 {
    flex-grow: 0;
    flex-shrink: 0;
  }
}
@media (max-width: 768px) {
  div .flex-grid > .medium-span-1, .flex-grid.medium-span-all-1 > *, div .flex > .medium-span-1, div .wp-block-file > .medium-span-1, .flex.medium-span-all-1 > *, .medium-span-all-1.wp-block-file > * {
    flex-basis: calc(8.3333333333% - 30px);
    flex-basis: calc(8.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .medium-span-1, div .flex > .medium-span-1, div .wp-block-file > .medium-span-1 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .medium-span-2, .flex-grid.medium-span-all-2 > *, div .flex > .medium-span-2, div .wp-block-file > .medium-span-2, .flex.medium-span-all-2 > *, .medium-span-all-2.wp-block-file > * {
    flex-basis: calc(16.6666666667% - 30px);
    flex-basis: calc(16.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .medium-span-2, div .flex > .medium-span-2, div .wp-block-file > .medium-span-2 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .medium-span-3, .flex-grid.medium-span-all-3 > *, div .flex > .medium-span-3, div .wp-block-file > .medium-span-3, .flex.medium-span-all-3 > *, .medium-span-all-3.wp-block-file > * {
    flex-basis: calc(25% - 30px);
    flex-basis: calc(25% - var(--grid-gap));
  }
  div .flex-grid > .medium-span-3, div .flex > .medium-span-3, div .wp-block-file > .medium-span-3 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .medium-span-4, .flex-grid.medium-span-all-4 > *, div .flex > .medium-span-4, div .wp-block-file > .medium-span-4, .flex.medium-span-all-4 > *, .medium-span-all-4.wp-block-file > * {
    flex-basis: calc(33.3333333333% - 30px);
    flex-basis: calc(33.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .medium-span-4, div .flex > .medium-span-4, div .wp-block-file > .medium-span-4 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .medium-span-5, .flex-grid.medium-span-all-5 > *, div .flex > .medium-span-5, div .wp-block-file > .medium-span-5, .flex.medium-span-all-5 > *, .medium-span-all-5.wp-block-file > * {
    flex-basis: calc(41.6666666667% - 30px);
    flex-basis: calc(41.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .medium-span-5, div .flex > .medium-span-5, div .wp-block-file > .medium-span-5 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .medium-span-6, .flex-grid.medium-span-all-6 > *, div .flex > .medium-span-6, div .wp-block-file > .medium-span-6, .flex.medium-span-all-6 > *, .medium-span-all-6.wp-block-file > * {
    flex-basis: calc(50% - 30px);
    flex-basis: calc(50% - var(--grid-gap));
  }
  div .flex-grid > .medium-span-6, div .flex > .medium-span-6, div .wp-block-file > .medium-span-6 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .medium-span-7, .flex-grid.medium-span-all-7 > *, div .flex > .medium-span-7, div .wp-block-file > .medium-span-7, .flex.medium-span-all-7 > *, .medium-span-all-7.wp-block-file > * {
    flex-basis: calc(58.3333333333% - 30px);
    flex-basis: calc(58.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .medium-span-7, div .flex > .medium-span-7, div .wp-block-file > .medium-span-7 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .medium-span-8, .flex-grid.medium-span-all-8 > *, div .flex > .medium-span-8, div .wp-block-file > .medium-span-8, .flex.medium-span-all-8 > *, .medium-span-all-8.wp-block-file > * {
    flex-basis: calc(66.6666666667% - 30px);
    flex-basis: calc(66.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .medium-span-8, div .flex > .medium-span-8, div .wp-block-file > .medium-span-8 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .medium-span-9, .flex-grid.medium-span-all-9 > *, div .flex > .medium-span-9, div .wp-block-file > .medium-span-9, .flex.medium-span-all-9 > *, .medium-span-all-9.wp-block-file > * {
    flex-basis: calc(75% - 30px);
    flex-basis: calc(75% - var(--grid-gap));
  }
  div .flex-grid > .medium-span-9, div .flex > .medium-span-9, div .wp-block-file > .medium-span-9 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .medium-span-10, .flex-grid.medium-span-all-10 > *, div .flex > .medium-span-10, div .wp-block-file > .medium-span-10, .flex.medium-span-all-10 > *, .medium-span-all-10.wp-block-file > * {
    flex-basis: calc(83.3333333333% - 30px);
    flex-basis: calc(83.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .medium-span-10, div .flex > .medium-span-10, div .wp-block-file > .medium-span-10 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .medium-span-11, .flex-grid.medium-span-all-11 > *, div .flex > .medium-span-11, div .wp-block-file > .medium-span-11, .flex.medium-span-all-11 > *, .medium-span-all-11.wp-block-file > * {
    flex-basis: calc(91.6666666667% - 30px);
    flex-basis: calc(91.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .medium-span-11, div .flex > .medium-span-11, div .wp-block-file > .medium-span-11 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .medium-span-12, .flex-grid.medium-span-all-12 > *, div .flex > .medium-span-12, div .wp-block-file > .medium-span-12, .flex.medium-span-all-12 > *, .medium-span-all-12.wp-block-file > * {
    flex-basis: calc(100% - 30px);
    flex-basis: calc(100% - var(--grid-gap));
  }
  div .flex-grid > .medium-span-12, div .flex > .medium-span-12, div .wp-block-file > .medium-span-12 {
    flex-grow: 0;
    flex-shrink: 0;
  }
}
@media (max-width: 576px) {
  .flex-grid, .flex, .wp-block-file {
    flex-wrap: wrap;
  }
  div.site .flex-grid > *, div.site .flex > *, div.site .wp-block-file > * {
    flex-basis: calc(100% - 30px);
    flex-basis: calc(100% - var(--grid-gap));
  }
  div .flex-grid > .small-span-1, div .flex-grid.small-span-all-1 > *, div .flex > .small-span-1, div .wp-block-file > .small-span-1, div .flex.small-span-all-1 > *, div .small-span-all-1.wp-block-file > * {
    flex-basis: calc(8.3333333333% - 30px);
    flex-basis: calc(8.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .small-span-1, div .flex > .small-span-1, div .wp-block-file > .small-span-1 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .small-span-2, div .flex-grid.small-span-all-2 > *, div .flex > .small-span-2, div .wp-block-file > .small-span-2, div .flex.small-span-all-2 > *, div .small-span-all-2.wp-block-file > * {
    flex-basis: calc(16.6666666667% - 30px);
    flex-basis: calc(16.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .small-span-2, div .flex > .small-span-2, div .wp-block-file > .small-span-2 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .small-span-3, div .flex-grid.small-span-all-3 > *, div .flex > .small-span-3, div .wp-block-file > .small-span-3, div .flex.small-span-all-3 > *, div .small-span-all-3.wp-block-file > * {
    flex-basis: calc(25% - 30px);
    flex-basis: calc(25% - var(--grid-gap));
  }
  div .flex-grid > .small-span-3, div .flex > .small-span-3, div .wp-block-file > .small-span-3 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .small-span-4, div .flex-grid.small-span-all-4 > *, div .flex > .small-span-4, div .wp-block-file > .small-span-4, div .flex.small-span-all-4 > *, div .small-span-all-4.wp-block-file > * {
    flex-basis: calc(33.3333333333% - 30px);
    flex-basis: calc(33.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .small-span-4, div .flex > .small-span-4, div .wp-block-file > .small-span-4 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .small-span-5, div .flex-grid.small-span-all-5 > *, div .flex > .small-span-5, div .wp-block-file > .small-span-5, div .flex.small-span-all-5 > *, div .small-span-all-5.wp-block-file > * {
    flex-basis: calc(41.6666666667% - 30px);
    flex-basis: calc(41.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .small-span-5, div .flex > .small-span-5, div .wp-block-file > .small-span-5 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .small-span-6, div .flex-grid.small-span-all-6 > *, div .flex > .small-span-6, div .wp-block-file > .small-span-6, div .flex.small-span-all-6 > *, div .small-span-all-6.wp-block-file > * {
    flex-basis: calc(50% - 30px);
    flex-basis: calc(50% - var(--grid-gap));
  }
  div .flex-grid > .small-span-6, div .flex > .small-span-6, div .wp-block-file > .small-span-6 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .small-span-7, div .flex-grid.small-span-all-7 > *, div .flex > .small-span-7, div .wp-block-file > .small-span-7, div .flex.small-span-all-7 > *, div .small-span-all-7.wp-block-file > * {
    flex-basis: calc(58.3333333333% - 30px);
    flex-basis: calc(58.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .small-span-7, div .flex > .small-span-7, div .wp-block-file > .small-span-7 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .small-span-8, div .flex-grid.small-span-all-8 > *, div .flex > .small-span-8, div .wp-block-file > .small-span-8, div .flex.small-span-all-8 > *, div .small-span-all-8.wp-block-file > * {
    flex-basis: calc(66.6666666667% - 30px);
    flex-basis: calc(66.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .small-span-8, div .flex > .small-span-8, div .wp-block-file > .small-span-8 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .small-span-9, div .flex-grid.small-span-all-9 > *, div .flex > .small-span-9, div .wp-block-file > .small-span-9, div .flex.small-span-all-9 > *, div .small-span-all-9.wp-block-file > * {
    flex-basis: calc(75% - 30px);
    flex-basis: calc(75% - var(--grid-gap));
  }
  div .flex-grid > .small-span-9, div .flex > .small-span-9, div .wp-block-file > .small-span-9 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .small-span-10, div .flex-grid.small-span-all-10 > *, div .flex > .small-span-10, div .wp-block-file > .small-span-10, div .flex.small-span-all-10 > *, div .small-span-all-10.wp-block-file > * {
    flex-basis: calc(83.3333333333% - 30px);
    flex-basis: calc(83.3333333333% - var(--grid-gap));
  }
  div .flex-grid > .small-span-10, div .flex > .small-span-10, div .wp-block-file > .small-span-10 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .small-span-11, div .flex-grid.small-span-all-11 > *, div .flex > .small-span-11, div .wp-block-file > .small-span-11, div .flex.small-span-all-11 > *, div .small-span-all-11.wp-block-file > * {
    flex-basis: calc(91.6666666667% - 30px);
    flex-basis: calc(91.6666666667% - var(--grid-gap));
  }
  div .flex-grid > .small-span-11, div .flex > .small-span-11, div .wp-block-file > .small-span-11 {
    flex-grow: 0;
    flex-shrink: 0;
  }
  div .flex-grid > .small-span-12, div .flex-grid.small-span-all-12 > *, div .flex > .small-span-12, div .wp-block-file > .small-span-12, div .flex.small-span-all-12 > *, div .small-span-all-12.wp-block-file > * {
    flex-basis: calc(100% - 30px);
    flex-basis: calc(100% - var(--grid-gap));
  }
  div .flex-grid > .small-span-12, div .flex > .small-span-12, div .wp-block-file > .small-span-12 {
    flex-grow: 0;
    flex-shrink: 0;
  }
}

.site .flex.stay-flexed > *, .site .stay-flexed.wp-block-file > * {
  flex-basis: auto;
}

/*------- hide at break points --------*/
@media (max-width: 1200px) {
  .hide-on-container {
    display: none;
  }
}
@media (max-width: 1030px) {
  .hide-on-large {
    display: none;
  }
}
@media (max-width: 768px) {
  .hide-on-medium {
    display: none;
  }
}
@media (max-width: 576px) {
  .hide-on-small {
    display: none;
  }
}
/*--------------------------------------------------------------
# Grid Helpers
--------------------------------------------------------------*/
.align-center {
  align-items: center;
}

.justify-center {
  justify-content: center;
}

.flex-wrap {
  flex-wrap: wrap;
}

.flex-column {
  flex-direction: column;
}

.flex-grow {
  flex-grow: 1;
}

.space-between {
  justify-content: space-between;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
/*------- Layout that centers vertically and horizontally --------*/
.layout-center-content {
  display: flex;
  align-items: center;
  justify-content: center;
}

/*------- Grid of cards. requires grid class --------*/
.layout-cards-7 > * {
  grid-column: span 4;
}
.layout-cards-7 > * .hide-on-small-card {
  display: none;
}
.layout-cards-7 > *:nth-child(7n-3), .layout-cards-7 > *:nth-child(7n-6) {
  grid-column: span 8;
}
.layout-cards-7 > *:nth-child(7n-3) .hide-on-small-card, .layout-cards-7 > *:nth-child(7n-6) .hide-on-small-card {
  display: block;
}

@media all and (-ms-high-contrast: none) {
  .layout-cards-7 > * {
    width: calc(33.333% - 30px);
    width: calc(33.333% - var(--gap));
  }
  .layout-cards-7 > * .hide-on-small-card {
    display: none;
  }
  .layout-cards-7 > *:nth-child(7n-3), .layout-cards-7 > *:nth-child(7n-6) {
    width: calc(66.66666% - 30px);
    width: calc(66.66666% - var(--gap));
  }
  .layout-cards-7 > *:nth-child(7n-3) .hide-on-small-card, .layout-cards-7 > *:nth-child(7n-6) .hide-on-small-card {
    display: block;
  }
}
/*--------------------------------------------------------------
# Gutenburg file
--------------------------------------------------------------*/
.wp-block-file {
  align-content: center;
}
.wp-block-file a {
  flex: 0 0 auto;
}

/*--------------------------------------------------------------
# Gallery
--------------------------------------------------------------*/
#page .wp-block-gallery {
  padding: 0;
}
#page .wp-block-gallery li {
  padding: 0;
}
#page .wp-block-gallery .blocks-gallery-item {
  width: 100%;
  margin: 0;
  height: 300px;
}

.wp-block-quote.is-large:before {
  font-size: 4rem;
}
.wp-block-quote.is-large p {
  font-size: 4rem;
}

q {
  quotes: "“" "”" "‘" "’";
}

/*
	This file is for styling your comment sections
*/
#comments {
  padding: 30px 0;
  padding: var(--gap) 0;
}

.comments-holder {
  max-width: 70rem;
  max-width: var(--container-content);
  margin: auto;
}

.comment-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.comment-form-cookies-consent label {
  display: inline;
  font-weight: normal;
}

/*--------------------------------------------------------------
# Default Card Pagination for all loops
--------------------------------------------------------------*/
.pagination {
  text-align: center;
  padding: 30px 0;
  padding: var(--gap) 0;
}
.pagination .page-numbers {
  background: #007eac;
  background: var(--highlight);
  color: white;
  margin: 0 3px;
  padding: 3px 8px;
}
.pagination .page-numbers * {
  pointer-events: none;
}
.pagination .page-numbers.current {
  background: grey;
}
.pagination .page-numbers.dots {
  background: transparent;
  color: grey;
  margin: 0;
}

.nav-links {
  padding: 15px 0;
  padding: var(--gutters) 0;
  display: flex;
}
.nav-links > div {
  flex-grow: 1;
}

.nav-next {
  text-align: right;
}

.admin-bar #page {
  min-height: calc(100vh - 32px);
}

@media (max-width: 782px) {
  .admin-bar #page {
    min-height: calc(100vh - 46px);
  }
}
#tinymce {
  padding: 0 30px;
  padding: 0 var(--gap);
}

.swiper {
  padding-bottom: 18px !important;
  display: none;
}

.swiper-initialized {
  display: block;
}

.swiper-scrollbar-drag {
  background: #aeaeae !important;
}

@media screen and (max-width: 1320px) {
  .-swiper-padder {
    padding: 0;
  }
}

.swiper-button-next, .swiper-button-prev {
  background: black;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  font-size: 14px;
  color: white;
}

.swiper-button-next:after, .swiper-button-prev:after {
  font-size: 14px;
}

.swiper-button-next {
  right: -8px;
  transition: 0.5s;
}

.swiper-button-prev {
  left: -8px;
  transition: 0.5s;
}

.swiper-button-disabled {
  transition: 0.5s;
}
@media screen and (min-width: 1480.11px) {
  .swiper-button-disabled {
    opacity: 0.1 !important;
  }
}

.swiper-quotes .swiper-wrapper {
  align-items: center;
}

/*--------------------------------------------------------------
# Swiper versions
--------------------------------------------------------------*/
.swiper-container {
  color: black;
}

.swiper--triplet .swiper-slide {
  width: 33.33%;
  padding: 10px;
}
@media screen and (max-width: 1400px) {
  .swiper--triplet .swiper-slide {
    width: 50%;
  }
}
@media screen and (max-width: 1000px) {
  .swiper--triplet .swiper-slide {
    width: 100%;
  }
}

.swiper--extended {
  overflow: visible;
  overflow: initial;
}

.swiper--single-fade {
  max-width: 700px;
  max-width: 1000px;
}
@media screen and (max-width: 600px) {
  .swiper--single-fade {
    width: calc(100vw - 70px);
    margin-left: -10px;
  }
}
@media screen and (max-width: 500px) {
  .swiper--single-fade {
    width: calc(100vw - 28px);
    margin-left: -10px;
  }
}
.swiper--single-fade .swiper-slide {
  height: auto;
}

.modal-item .swiper--single-fade .basic-card__inner {
  background: #edf9ff;
  box-shadow: none;
}

.swiper--single-fade .swiper-slide > div {
  opacity: 0;
  transform: scale(0.95);
  transition: 0.3s;
}
.swiper--single-fade .swiper-slide-active > div {
  opacity: 1;
  transform: none;
  transition: 0.3s 0.3s;
}

.swiper-nav--bottom {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}
@media screen and (max-width: 700px) {
  .swiper-nav--bottom {
    margin-top: 16px;
  }
}
.swiper-nav--bottom div {
  position: relative;
}

.swiper-nav--left {
  margin-top: 40px;
  justify-content: flex-start;
}
.swiper-nav--left .swiper-button-prev {
  left: 0;
}
.swiper-nav--left .swiper-button-next {
  right: -14px;
}

.swiper-nav--right {
  margin-top: 40px;
  justify-content: flex-end;
}
.swiper-nav--right .swiper-button-prev {
  left: 0;
}
.swiper-nav--right .swiper-button-next {
  right: -14px;
}

.swiper-nav--right-absolute {
  position: absolute;
  top: 0;
  right: 0;
}

.swiper-nav--top {
  display: flex;
  justify-content: flex-end;
  padding-bottom: 10px;
}
.swiper-nav--top div {
  position: relative;
}
.swiper-nav--top .swiper-button-prev {
  left: -14px;
}
.swiper-nav--top .swiper-button-next {
  right: 0;
}

.swiper--full-width {
  overflow: auto;
  overflow: initial;
}

.swiper-slide-50 {
  max-width: 50%;
}

.swiper-backdrop-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 33.33%;
  height: 100%;
  text-align: center;
  font-size: 110px;
  display: flex;
  align-items: center;
}

.swiper-fake-slide {
  width: 33.33%;
}

.swiper-backdrop-content {
  opacity: 0;
  transition: 0.5s;
  transform: translateY(20px);
}

[data-index="0"] .swiper-backdrop-content {
  opacity: 1;
  transform: translateY(10px);
}

.editor-card--small {
  max-width: 260px;
  font-size: 1.6rem;
  line-height: 1.2;
  padding: 10px;
  height: auto;
  align-self: stretch;
}
.editor-card--small .basic-card__inner {
  box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
}
.editor-card--small div {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
.editor-card--small .basic-card__content {
  padding: 26px 20px;
}
.swiper--small {
  text-align: center;
}

.swiper--small .swiper-slide {
  padding-left: 0;
}

/*--------------------------------------------------------------
# BASIC CARDS STYLES AND MODS IN BOTTOMM
--------------------------------------------------------------*/
.module--basic-grid .grid-container {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  justify-content: center;
  grid-column-gap: 50px;
  -moz-column-gap: 50px;
       column-gap: 50px;
  grid-row-gap: 50px;
  row-gap: 50px;
}
@media screen and (max-width: 1100px) {
  .module--basic-grid .grid-container {
    grid-template-columns: repeat(1, minmax(0, 1fr));
    justify-items: center;
  }
}

.basic-card {
  height: auto;
}

.basic-card, .quote-card {
  box-sizing: border-box;
  display: flex;
}

.basic-card {
  padding: 20px 20px;
}

.basic-card.swiper-slide {
  padding-left: 0;
}

.quote-card {
  padding: 20px 20px;
}
@media screen and (max-width: 600px) {
  .quote-card {
    padding: 0;
  }
}

.swiper .basic-card {
  min-width: 33.33%;
  max-width: 33.33% !important;
}
@media screen and (max-width: 1300px) {
  .swiper .basic-card {
    max-width: 50% !important;
    padding: 10px 10px;
  }
}
@media screen and (max-width: 1100px) {
  .swiper .basic-card {
    max-width: 60% !important;
  }
}
@media screen and (max-width: 680px) {
  .swiper .basic-card {
    max-width: 60% !important;
  }
}
@media screen and (max-width: 600px) {
  .swiper .basic-card {
    max-width: 90% !important;
  }
}
@media screen and (max-width: 450px) {
  .swiper .basic-card {
    max-width: 90% !important;
  }
}

.section--basic-header {
  background: #EBE4CF;
  padding: 60px 0;
}

.module--basic-grid {
  width: 100%;
}
.module--basic-grid .flx-container {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -15px;
}
@media screen and (max-width: 700px) {
  .module--basic-grid .flx-container {
    margin: 0 -8px;
  }
}
@media screen and (max-width: 600px) {
  .module--basic-grid .flx-container {
    justify-content: center;
  }
}

.module--basic-grid {
  margin-bottom: 60px;
}

.-after-basic-grid {
  padding-top: 80px;
}

.basic-grid__header {
  margin-bottom: 20px;
}

.basic-card--on-grid {
  width: auto !important;
  max-width: auto !important;
  padding: 0 !important;
  display: flex;
  white-space: normal;
}
.basic-card__inner {
  width: 100%;
  height: 100%;
}

.basic-card__inner {
  display: flex;
  overflow: hidden;
}

.basic-card__image {
  position: relative;
}
.basic-card__image .placeholder-img {
  width: 100%;
}
.basic-card__image .placeholder-img img {
  width: 100%;
}

.basic-card--x, .featured-cell-right .basic-card__inner, .single-card-wrap--x .basic-card__inner, .module--asiantuntijat-app .basic-card__inner {
  flex-direction: row;
}

.basic-card__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px;
}
@media screen and (max-width: 700px) {
  .basic-card__header {
    padding-top: 12px;
    padding-bottom: 12px;
  }
}

.basic-card__img .image-aspect-box {
  padding-top: 56%;
}

.basic-card__content {
  padding: 20px;
  display: flex;
  flex-direction: column;
  flex-grow: 2;
}

.quote-card .basic-card__content {
  justify-content: space-between;
  padding: 40px;
  max-width: 800px;
  width: 100%;
  margin: auto;
}
@media screen and (max-width: 600px) {
  .quote-card .basic-card__content {
    padding: 20px;
  }
}
.quote-card .basic-card__content .-quote-txt {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 10px;
}
.quote-card .basic-card__content .-quote-name {
  font-weight: 400;
  font-family: "Config-SemiBold", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  color: #ff8517;
  margin-bottom: 0;
}
.quote-card .basic-card__content .-quote-company {
  font-size: 1.6rem;
}

.basic-card__footer {
  padding: 16px;
  text-align: center;
  padding-top: 4px;
}
@media screen and (max-width: 700px) {
  .basic-card__footer {
    padding-top: 4px;
  }
}
.basic-card__footer .wrap {
  display: flex;
  justify-content: center;
}
.basic-card__footer span {
  font-size: 1rem;
  margin-top: 12px;
  display: inline-block;
}

.card-title, .article-card .-title, .feature-card__content h3, .feature-card__content .-name, .person-card__content .-name {
  margin-bottom: 6px;
  font-size: 2.2rem;
  line-height: 1.2;
}
@media screen and (max-width: 1400px) {
  .card-title, .article-card .-title, .feature-card__content h3, .feature-card__content .-name, .person-card__content .-name {
    font-size: 2rem;
  }
}

.editor-card .basic-card__content {
  padding-bottom: 40px;
}
.editor-card h1, .editor-card h2, .editor-card h3, .editor-card h4, .editor-card h5 {
  font-size: 2rem;
  margin: 0;
  color: #04aef2;
}
.editor-card p {
  margin: 20px 0;
  font-size: 1.6rem;
}
.editor-card a {
  color: #04aef2;
}

.x-card__image, .person-card__image {
  width: 100px;
  height: 100%;
  min-width: 250px;
}
@media screen and (max-width: 1500px) {
  .x-card__image, .person-card__image {
    min-width: 200px;
  }
}
@media screen and (max-width: 600px) {
  .x-card__image, .person-card__image {
    width: 100px;
    min-width: 100px;
    height: 100px;
    border-radius: 999px;
    margin: 30px;
    margin-left: 20px;
    margin-right: 0;
    overflow: hidden;
  }
}
@media screen and (max-width: 500px) {
  .x-card__image, .person-card__image {
    width: 60px;
    min-width: 60px;
    height: 60px;
    margin-right: -10px;
  }
}
.x-card__image img, .person-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.x-card__image--padded {
  padding: 10px;
}
.x-card__image--padded img {
  border-radius: 6px;
}

.x-card__content, .feature-card__content, .person-card__content {
  padding: 30px;
}

@media screen and (max-width: 1999.9px) {
  .module--asiantuntijat-app {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media screen and (max-width: 1600px) {
  .module--asiantuntijat-app {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (max-width: 1400px) {
  .module--asiantuntijat-app {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.module--asiantuntijat-app .grid-container {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  justify-content: center;
  grid-column-gap: 50px;
  -moz-column-gap: 50px;
       column-gap: 50px;
  grid-row-gap: 50px;
  row-gap: 50px;
}
@media screen and (max-width: 1600px) {
  .module--asiantuntijat-app .grid-container {
    grid-column-gap: 30px;
    -moz-column-gap: 30px;
         column-gap: 30px;
    grid-row-gap: 30px;
    row-gap: 30px;
  }
}
@media screen and (max-width: 1400px) {
  .module--asiantuntijat-app .grid-container {
    grid-column-gap: 20px;
    -moz-column-gap: 20px;
         column-gap: 20px;
    grid-row-gap: 20px;
    row-gap: 20px;
  }
}
@media screen and (max-width: 1200px) {
  .module--asiantuntijat-app .grid-container {
    grid-template-columns: repeat(1, minmax(0, 1fr));
    justify-items: center;
  }
}
.person-card__content .-cv {
  margin-bottom: 0;
  font-size: 1.6rem;
  max-width: 360px;
}
@media screen and (max-width: 1400px) {
  .person-card__content .-cv {
    font-size: 1.4rem;
  }
}
.person-card__content .-cv span:after {
  content: ",";
}
.person-card__content .-cv span:last-of-type:after {
  content: "";
}
.person-card__content .-areas {
  margin-top: 10px;
  color: #04aef2;
  font-size: 1.4rem;
}
.person-card__content .-areas span:after {
  content: ",";
}
.person-card__content .-areas span:last-of-type:after {
  content: "";
}
.person-card__content .capsule-wrap {
  margin: 20px 0;
}
.person-card__content .capsule-wrap a, .person-card__content .capsule-wrap button {
  margin: 0;
}

.module--featured, .split-content--materials {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}
.module--featured .flx-container, .split-content--materials .flx-container {
  display: flex;
}

.feature-card__image {
  width: 100px;
  height: 100%;
  min-width: 250px;
  position: relative;
  width: 33.33%;
  min-width: 300px;
  display: flex;
  align-items: center;
  align-self: center;
}
.feature-card__image .placeholder-img {
  width: 100%;
}
.feature-card__image img {
  min-width: 100%;
}

.feature-card .basic-card__inner {
  padding: 0;
}

.feature-card__content {
  background: white;
  width: 100%;
}
.feature-card__content p {
  font-size: 1.6rem;
}

.feature-card__content .-name {
  margin: 0 0 1em 0;
}

.feature-card__content h3 {
  margin: 0 0 1em 0;
}

.featured-cell-left, .single-card-wrap--y {
  display: flex;
  align-items: stretch;
  padding-right: 50px;
  width: 40%;
}
.featured-cell-left .cell, .single-card-wrap--y .cell {
  min-width: 100%;
}
.featured-cell-left .feature-card__image, .single-card-wrap--y .feature-card__image {
  margin: 0 auto;
}

.featured-cell-right, .single-card-wrap--x {
  width: 60%;
}
.featured-cell-right .cell:first-of-type, .single-card-wrap--x .cell:first-of-type {
  margin-bottom: 50px;
}

.module--single-card {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}
.module--single-card .flx-container {
  display: flex;
  justify-content: center;
}

.single-card-wrap--y {
  padding: 0 25px;
}

.info-card {
  background: white;
  width: 100%;
  flex-wrap: wrap;
  border-radius: 8px;
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
  padding: 40px;
  margin-bottom: 40px;
  display: flex;
}
@media only screen and (max-width: 1300px) {
  .info-card {
    padding: 24px;
  }
}
.info-card .-cat {
  display: inline-flex;
  margin-bottom: 10px;
  position: relative;
  color: #696973;
}
.info-card .-footer {
  flex-grow: 1;
  display: flex;
  align-items: flex-end;
  font-size: 1.6rem;
  text-transform: uppercase;
}
.info-card .-footer span {
  display: inline-flex;
  color: #04aef2;
  position: relative;
  line-height: 1;
  margin-right: 15px;
  font-size: 1.4rem;
}
.info-card .-footer span:after {
  content: "";
  height: 100%;
  width: 1px;
  position: absolute;
  background: #04aef2;
  right: -8px;
}
.info-card .-footer span:last-of-type:after {
  opacity: 0;
}

.module--blog-app .grid-container {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  justify-content: center;
  grid-column-gap: 50px;
  -moz-column-gap: 50px;
       column-gap: 50px;
  grid-row-gap: 50px;
  row-gap: 50px;
}
@media screen and (max-width: 1500px) {
  .module--blog-app .grid-container {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-column-gap: 30px;
    -moz-column-gap: 30px;
         column-gap: 30px;
    grid-row-gap: 30px;
    row-gap: 30px;
  }
}
@media screen and (max-width: 1300px) {
  .module--blog-app .grid-container {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-items: center;
    grid-column-gap: 20px;
    -moz-column-gap: 20px;
         column-gap: 20px;
    grid-row-gap: 20px;
    row-gap: 20px;
  }
}
@media screen and (max-width: 1200px) {
  .module--blog-app .grid-container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-column-gap: 30px;
    -moz-column-gap: 30px;
         column-gap: 30px;
    grid-row-gap: 30px;
    row-gap: 30px;
  }
}
@media screen and (max-width: 1000px) {
  .module--blog-app .grid-container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-column-gap: 20px;
    -moz-column-gap: 20px;
         column-gap: 20px;
    grid-row-gap: 20px;
    row-gap: 20px;
  }
}
@media screen and (max-width: 700px) {
  .module--blog-app .grid-container {
    grid-template-columns: repeat(1, minmax(0, 1fr));
    grid-column-gap: 20px;
    -moz-column-gap: 20px;
         column-gap: 20px;
    grid-row-gap: 20px;
    row-gap: 20px;
  }
}

.article-card {
  cursor: pointer;
  transition: 0.3s;
  width: 100% !important;
}
@media screen and (max-width: 700px) {
  .article-card {
    max-width: 400px;
  }
}
.article-card .article-link {
  width: 100%;
}
.article-card .-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2px;
  color: #04aef2;
  font-size: 1.4rem;
}
.article-card .-cat {
  text-transform: uppercase;
}
.article-card .-desc {
  font-size: 1.4rem;
}
.article-card .-pod-number {
  /* background: blue; */
  border-radius: 999px;
  border: solid 1px;
  color: #04aef2;
  height: 40px;
  width: 40px;
  font-size: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: solid 1px;
}
.article-card .-footer {
  flex-grow: 1;
  display: flex;
  align-items: flex-end;
  font-size: 1.4rem;
  margin-top: 60px;
}
.article-card .-meta {
  transition: 0.3s;
}

.module--blog-app .article-card:hover {
  transform: scale(1.02);
  transition: 0.3s;
}
.module--contact-avatar {
  text-align: center;
}
.module--contact-avatar .contact-avatar__image {
  margin: auto;
  margin-bottom: 20px;
}
.module--contact-avatar .contact-avatar__image.left {
  margin-left: 0;
}

.contact-avatar__image {
  width: 100px;
  height: 100px;
  position: relative;
  border-radius: 999px;
  overflow: hidden;
}
.contact-avatar__image .placeholder-img {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.contact-avatar__image .placeholder-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.contact-avatar--prime {
  margin-top: 40px;
  display: flex;
  text-align: left;
}
@media screen and (max-width: 600px) {
  .contact-avatar--prime {
    flex-direction: column;
    text-align: center;
    align-items: center;
  }
}
.contact-avatar--prime .contact-avatar__image {
  margin: 0;
  margin-bottom: 20px;
  width: 200px;
  height: 200px;
  border-radius: 2rem;
  overflow: hidden;
}
.contact-avatar--prime .contact-avatar__content {
  text-align: left;
  padding-left: 30px;
  margin-top: 0;
}
@media screen and (max-width: 600px) {
  .contact-avatar--prime .contact-avatar__content {
    text-align: center;
    padding: 0;
  }
}
.contact-avatar--prime .contact-avatar__content h1, .contact-avatar--prime .contact-avatar__content h2, .contact-avatar--prime .contact-avatar__content h3, .contact-avatar--prime .contact-avatar__content h4 {
  font-size: 2.8rem;
}
.contact-avatar--prime .contact-avatar__content p, .contact-avatar--prime .contact-avatar__content a {
  margin: 0;
  line-height: 1.4;
  font-size: 1.8rem;
}

.quote-card .module--contact-avatar {
  display: flex;
  text-align: left;
  padding: 0;
  border-top: solid 1px #d7d7d7;
  margin-top: 20px;
  padding-top: 26px;
  position: relative;
}
.quote-card .module--contact-avatar .logo-img {
  position: absolute;
  right: 0;
  bottom: 50%;
  transform: translateY(50%);
  filter: grayscale(1);
  width: 60px;
}
.quote-card .contact-avatar__image {
  margin: 0;
  width: 80px;
  height: 80px;
  margin-left: 0;
  margin-right: 20px;
}

.themes {
  margin: auto;
}
.themes .flx-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 1fr;
}
@media screen and (max-width: 1400px) {
  .themes .flx-container {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 1000px) {
  .themes .flx-container {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 700px) {
  .themes .flx-container {
    grid-template-columns: repeat(1, 1fr);
  }
}
.themes .cell-basic {
  width: auto;
  position: relative;
}
.themes .basic-card__inner {
  box-shadow: none;
  border: solid 1px #d7d7d7;
}
.themes .contact-avatar__image {
  width: 30px;
  height: 30px;
  margin-bottom: 10px;
}
.themes .cell-basic .basic-card__inner {
  justify-content: center;
  padding: 30px;
  padding-top: 26px;
  background: #EBE4CF;
}
.themes h5 {
  position: relative;
  text-align: center;
}
.themes h5:before {
  content: "";
  width: 30px;
  height: 30px;
  position: absolute;
  top: 0;
  left: 0;
  /* position: relative; */
}
.themes .capsule-wrap {
  justify-content: center;
  margin: 0;
  margin-top: 20px;
}
.themes .capsule-wrap a {
  margin: 0;
  font-size: 1.4rem;
  font-size: 1.4rem;
  padding: 9px;
  background: #00d084;
  color: white;
  box-shadow: none;
}

.client-card {
  max-width: 1200px;
  margin: auto;
  margin-bottom: 40px;
  background: none;
}
.client-card .basic-card__inner {
  background: #EBE4CF;
  flex-direction: row;
  box-shadow: none;
  border: none;
  border-radius: 0;
}
.client-card .basic-card__image {
  min-width: 33.33%;
  background: #fdfdfd;
  position: relative;
  border: solid 1px #d7d7d7;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 30px;
}
.client-card .basic-card__image .lazy-img img {
  -o-object-fit: contain;
     object-fit: contain;
}
.client-card .basic-card__image .placeholder-img {
  width: 100%;
  visibility: hidden;
}
.client-card .basic-card__image img {
  min-width: 100%;
}
.client-card .basic-card__content {
  min-width: 66.66%;
  padding: 40px;
  padding-left: 60px;
  background: #EBE4CF;
}
.client-card .-cat {
  text-transform: uppercase;
  font-size: 1.6rem;
  margin-bottom: 10px;
  display: block;
  color: #00d084;
}

.section-theme--color .themes .basic-card__inner {
  background: white;
  background-color: #00668f !important;
  color: white;
}

.themes.has-blue-bg .basic-card__inner {
  background: white;
  background-color: #e8f7fc !important;
  border: none;
}

.dark-card .basic-card__inner {
  background: #005e83;
  color: white;
}
.dark-card h2 {
  color: #00d084 !important;
  margin-bottom: 10px;
}
.dark-card p.no-margin {
  font-size: 1.4rem;
}

.page-template-laskentakohteet .site-container {
  visibility: hidden;
}

@media screen and (max-width: 1000px) {
  .section--laskentakohteet-app {
    display: none;
  }
}

.section--laskentakohteet-app {
  position: relative;
  max-width: 100vw;
}

@media screen and (max-width: 1360px) {
  .section--laskentakohteet-app__full-app .U_base-pad {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.module--laskentakohteet-app {
  border-radius: 10px 10px 0 0;
  position: relative;
}

.-custom-pad {
  padding-top: 90px;
}

table {
  margin-bottom: 0;
}

.laskentakohteet-app__header tr:after {
  content: "";
  border-radius: 8px 8px 0 0;
  position: absolute;
  top: -20px;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background: #ffff22;
}
.laskentakohteet-app__header th {
  font-size: 1.4rem;
  line-height: 22px;
  font-weight: 500;
  cursor: pointer;
}
.laskentakohteet-app__header th span {
  display: inline-block;
  pointer-events: none;
}
.laskentakohteet-app__header th span:after {
  content: "";
  position: absolute;
  top: -10px;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background: #ffff22;
}

.laskentakohteet-app__body {
  width: 100%;
  min-height: 600px;
  background: #333333;
}

.module--laskentakohteet-app th, .module--laskentakohteet-app td {
  padding: 0 20px;
}
@media screen and (max-width: 1100px) {
  .module--laskentakohteet-app th, .module--laskentakohteet-app td {
    padding: 0 14px;
  }
}
.module--laskentakohteet-app td {
  position: relative;
  font-weight: 400;
}
.module--laskentakohteet-app th {
  padding-top: 0;
  padding-bottom: 20px;
}
.module--laskentakohteet-app tbody tr {
  background: #333333;
}
.module--laskentakohteet-app td {
  color: white;
}

.td--kohde .flx-container, .td--basic-cell .flx-container {
  display: flex;
  flex-direction: column;
  min-height: 100px;
  padding-top: 20px;
  padding-top: 24px;
}

.td__label {
  font-size: 1rem;
  color: #ffff22;
  line-height: 16px;
}

.td__label--basic {
  color: #B0B0B0;
}
@media screen and (min-width: 1200.11px) {
  .td__label--basic {
    visibility: hidden;
  }
}

.td__name {
  line-height: 20px;
  font-size: 1.5rem;
}
@media screen and (max-width: 1200px) {
  .td__name {
    font-size: 1.4rem;
  }
}

.td__xtra-info {
  color: #B0B0B0;
  font-size: 1rem;
  line-height: 16px;
  margin-top: 4px;
}
.td__xtra-info img {
  height: 14px;
  width: auto;
  margin-right: 4px;
}
.td__xtra-info .-location {
  display: inline-flex;
  align-items: center;
  margin-right: 8px;
}

.td--basic-cell .td__name {
  font-size: 1.5rem;
}
@media screen and (max-width: 1200px) {
  .td--basic-cell .td__name {
    font-size: 1.4rem;
  }
}
.td--basic-cell .td__name.-yellow {
  color: #ffff22;
}

td:after {
  content: "";
  position: absolute;
  height: 1px;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #B0B0B0;
}

tbody tr, .tbody tr {
  position: relative;
  cursor: pointer;
}

.laskentakohteet-app__footer {
  width: 100%;
  background: #000000;
  padding: 40px 20px;
  transform: translateY(-101px);
  margin-bottom: -101px;
  border-top: solid 1px #B0B0B0;
  border-radius: 0 0 8px 8px;
  color: white;
}
.laskentakohteet-app__footer .txt span {
  color: #ffff22;
  font-weight: 500;
}
.sticky--th {
  position: sticky;
  top: 10px;
  z-index: 2;
}

@media screen and (max-width: 1200px) {
  .module--laskentakohteet-app.-full-app {
    overflow-x: scroll;
  }
}
.module--laskentakohteet-app.-full-app table {
  width: 100%;
  padding-bottom: 90px;
}
.module--laskentakohteet-app.-full-app tr td:first-of-type {
  min-width: 260px;
}
.module--laskentakohteet-app.-full-app td, .module--laskentakohteet-app.-full-app th {
  min-width: 153px;
  min-width: 140px;
}
@media screen and (max-width: 1200px) {
  .module--laskentakohteet-app.-full-app .td--kohde, .module--laskentakohteet-app.-full-app .tr--kohde {
    position: sticky;
    left: 0;
    z-index: 3;
  }
}
@media screen and (max-width: 1200px) {
  .module--laskentakohteet-app.-full-app .tr--kohde:after {
    content: "";
    position: absolute;
    left: 259px;
    top: 0;
    height: 24px;
    width: 1px;
    background: rgba(51,51,51,0.34118);
    z-index: 3;
  }
}
.module--laskentakohteet-app.-full-app .td--kohde {
  background: #333333;
}
@media screen and (max-width: 1200px) {
  .module--laskentakohteet-app.-full-app .td--kohde {
    background: #282727;
  }
}
.module--laskentakohteet-app.-full-app .td--basic-cell {
  background: #333333;
}

.module--laskentakohteet-app.-full-app tr td {
  transition: background 0.25s;
}

.module--laskentakohteet-app.-full-app tr:hover td {
  background: #1b1b1b;
}

.tr__hover-action-indicator {
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 1rem;
  background: #ffff22;
  color: black;
  padding: 4px 4px;
  line-height: 1;
  border-radius: 4px;
  opacity: 0;
}

.module--laskentakohteet-app.-full-app tr:hover .tr__hover-action-indicator {
  opacity: 1;
  transform: none;
  transition: 0.25s;
}

.-home-preview {
  margin-left: 8.3333%;
  margin-right: 8.3333%;
}

.laskentakohteet-app__footer--home {
  margin-left: 8.3333%;
  width: calc(100% - 16.6666%);
}

.-home-preview .laskentakohteet-app__header tr:after {
  display: none;
}

.-home-preview .laskentakohteet-app__header:after {
  content: "";
  border-radius: 8px 8px 0 0;
  position: absolute;
  top: -20px;
  left: 0;
  width: 100%;
  height: 62px;
  z-index: -1;
  background: #ffff22;
  z-index: 3;
}

.-home-preview .laskentakohteet-app__header th {
  z-index: 4;
  position: relative;
}

.table-mask {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 100px;
  width: 100%;
  background: white;
}

.-home-preview:after {
  content: "";
  border-radius: 8px 8px 0 0;
  position: absolute;
  top: -20px;
  left: 0;
  width: 100%;
  height: 62px;
  z-index: -1;
  background: #ffff22;
}

.-home-preview .laskentakohteet-app__body {
  position: relative;
  overflow: hidden;
}
.-home-preview .laskentakohteet-app__body tr td:first-of-type {
  width: 33.333%;
}

.laskentakohteet-app__body.Anim--move-up .Anim-item--list {
  transform: translateY(-100%);
  transition: 0.75s cubic-bezier(0.7, 0, 0.3, 1);
}

.-home-preview table {
  overflow: hidden;
}

.-home-preview .laskentakohteet-app__header {
  position: relative;
  overflow: hidden;
  z-index: 2;
  background: #ffff22;
}

.module--laskentakohteet-navigation {
  margin-bottom: 4.4rem;
}
.module--laskentakohteet-navigation .flx-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.laskentakohteet-navigation__filters ul {
  list-style: none;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  max-width: 100%;
}
.laskentakohteet-navigation__filters li {
  background: transparent;
  border: none;
  padding: 0.8rem 2.4rem;
  line-height: 1;
  border-radius: 0.4rem;
  transition: 0.25s;
  white-space: nowrap;
}
@media screen and (max-width: 940px) {
  .laskentakohteet-navigation__filters li {
    padding: 0.6rem 1.4rem;
  }
}
@media screen and (max-width: 740px) {
  .laskentakohteet-navigation__filters li {
    background: rgba(144,144,144,0.07059);
    margin-right: 10px;
    margin-bottom: 10px;
  }
}
.laskentakohteet-navigation__filters li.S-active__area {
  background: #ffff22;
}

.mobile-filters-breaker {
  min-width: 100%;
}
@media screen and (min-width: 720.11px) {
  .mobile-filters-breaker {
    display: none;
  }
}

.filter-buttton__all-results, .filter-buttton__area {
  background: none;
  padding: 0;
  margin: 0;
  border: none;
  cursor: pointer;
  font-size: 1.6rem;
  white-space: nowrap;
}
@media screen and (max-width: 940px) {
  .filter-buttton__all-results, .filter-buttton__area {
    font-size: 1.4rem;
  }
}

.filter-buttton__all-results {
  font-weight: 500;
}

.laskentakohteet-navigation__cta button {
  white-space: nowrap;
  margin-right: 0;
}
@media screen and (max-width: 800px) {
  .laskentakohteet-navigation__cta button {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 740px) {
  .laskentakohteet-navigation__cta {
    display: none;
  }
}

.S-disabled__area-item {
  display: none;
}

.module--laskentakohteet-area-personel {
  margin-bottom: 50px;
  padding-left: 20px;
  margin-top: -20px;
  padding-top: 20px;
  font-size: 1.6rem;
  border-top: solid 1px #B0B0B0;
  opacity: 1;
  transition: opacity 0.3s;
}
.module--laskentakohteet-area-personel .label {
  font-weight: 500;
  margin-bottom: 10px;
}
.module--laskentakohteet-area-personel .flx-container {
  display: flex;
  align-items: center;
}
.module--laskentakohteet-area-personel .contact-person__img {
  width: 60px;
  overflow: hidden;
  border-radius: 999px;
  margin-right: 20px;
}
.module--laskentakohteet-area-personel .contact-person__img .image-aspect-box {
  padding-top: 100%;
}

.module--laskentakohteet-area-personel.S-disabled {
  height: 0;
  overflow: hidden;
  border: none;
  padding: 0;
  margin: 0;
  opacity: 0;
}

.module--laskentakohteet-area-personel .contact-person {
  display: none;
}

.module--laskentakohteet-area-personel .contact-person.S-active {
  display: block;
}

.module--laskentakohteet-app.-full-app {
  transform: none;
  transition: opacity 0.25s, transform 0.5s;
}

.module--laskentakohteet-app.S-animating {
  transition: 0s;
  opacity: 0;
  transform: translateY(10px);
}
.module--laskentakohteet-app.S-animating button {
  pointer-events: none;
}

.laskentakohteet-bottom-wrapper {
  transition: opacity 0.3s;
}

.S-animating--table .laskentakohteet-bottom-wrapper {
  opacity: 0;
  transition: 0s;
}

.sortable {
  border-spacing: 0;
}

.sortable th:hover::after {
  color: inherit;
  font-size: 1.2em;
  content: " ▸";
  opacity: 1;
}

.sortable th::after {
  font-size: 1.2em;
  color: black;
  content: " ▸";
  opacity: 0.5;
}

.sortable th.dir-d {
  color: #000;
}

.sortable th.dir-d::after {
  color: inherit;
  content: " ▾";
  opacity: 1;
}

.sortable th.dir-u {
  color: #000;
}

.sortable th.dir-u::after {
  color: inherit;
  content: " ▴";
  opacity: 1;
}

th.no-sort {
  pointer-events: none;
}
th.no-sort:after {
  font-size: 1.2em;
  color: black;
  content: "";
}

.module--area-contact .flx-container {
  display: flex;
}
@media screen and (max-width: 740px) {
  .module--area-contact .flx-container {
    display: block;
  }
}

.area-contact__map {
  padding-right: 80px;
  width: 50%;
  max-width: 582px;
}
@media screen and (max-width: 1300px) {
  .area-contact__map {
    padding-right: 60px;
  }
}
@media screen and (max-width: 1200px) {
  .area-contact__map {
    padding-right: 40px;
  }
}
@media screen and (max-width: 740px) {
  .area-contact__map {
    padding-right: 0;
    max-width: 100%;
    width: 100%;
  }
}
.area-contact__map .cls-2 {
  transition: 0.3s;
}
.area-contact__map .cls-2.S-active__area {
  fill: yellow;
  transition: 0.3s;
  cursor: pointer;
}

.sticky-map {
  position: sticky;
  top: 40px;
  padding: 40px;
  background: #333333;
}

.area-contact__map--mobile {
  margin-bottom: -7px;
}
@media screen and (min-width: 740.11px) {
  .area-contact__map--mobile {
    display: none;
  }
}

@media screen and (max-width: 740px) {
  .area-contact__map--desktop {
    display: none;
  }
}

.area-contact__persons {
  flex-grow: 2;
}
@media screen and (max-width: 1100px) {
  .area-contact__persons {
    max-width: 50%;
  }
}
@media screen and (max-width: 740px) {
  .area-contact__persons {
    max-width: 100%;
  }
}

.area-contact-person {
  padding: 40px 0;
  border-top: solid 1px #B0B0B0;
}
.area-contact-person .flx-container {
  display: flex;
}

.area-contact-person:last-of-type {
  border-bottom: solid 1px #B0B0B0;
}

.area-contact-person__image {
  width: 260px;
}
@media screen and (max-width: 1300px) {
  .area-contact-person__image {
    width: 220px;
  }
}
@media screen and (max-width: 1200px) {
  .area-contact-person__image {
    width: 180px;
  }
}
@media screen and (max-width: 1100px) {
  .area-contact-person__image {
    width: 120px;
  }
}
@media screen and (max-width: 500px) {
  .area-contact-person__image {
    width: 100px;
  }
}
.area-contact-person__image .image-aspect-box {
  padding-top: 100%;
}

.area-contact-person__content {
  width: calc(100% - 200px);
  flex-grow: 2;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-left: 40px;
}
@media screen and (max-width: 1100px) {
  .area-contact-person__content {
    padding-left: 30px;
  }
}
@media screen and (max-width: 1100px) {
  .area-contact-person__content {
    padding-left: 20px;
  }
}
.area-contact-person__content h4 {
  margin: 0;
}
.area-contact-person__content p {
  font-size: 1.6rem;
  margin-top: 7px;
  margin-bottom: 0;
  line-height: 1;
}
@media screen and (max-width: 700px) {
  .area-contact-person__content p {
    font-size: 1.5rem;
  }
}
.area-contact-person__content h5.content__top {
  font-size: 2.2rem;
  margin-bottom: 20px;
}
@media screen and (max-width: 1200px) {
  .area-contact-person__content h5.content__top {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 700px) {
  .area-contact-person__content h5.content__top {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 500px) {
  .area-contact-person__content h5.content__top {
    font-size: 1.6rem;
  }
}
.area-contact-person__content h5.content__top span {
  font-size: 1.2rem;
  opacity: 0.6;
  font-weight: 500;
  margin-top: 4px;
  display: block;
}
@media screen and (max-width: 700px) {
  .area-contact-person__content h5.content__top span {
    font-size: 1.1rem;
  }
}

.area-contact-person .-anim {
  transition: 0.3s;
}

.area-contact-person.S-disabled__area .-anim {
  opacity: 0.5;
}
.area-contact-person.S-disabled__area .-anim .area-contact-person.S-active__area .-anim {
  opacity: 1;
}

.form-control {
  display: flex;
  align-items: center;
}
.form-control span {
  margin-left: 6px;
}
.form-control input[type=checkbox] {
  /* Add if not using autoprefixer */
  -webkit-appearance: none;
  /* Remove most all native input styles */
  -moz-appearance: none;
       appearance: none;
  /* For iOS < 15 */
  background-color: white;
  /* Not removed via appearance */
  margin: 0;
  width: 10px;
  height: 10px;
  border: solid 1px black;
  display: grid;
  align-content: center;
  justify-content: center;
  place-content: center;
}
.form-control input[type=checkbox]::before {
  content: "";
  width: 10px;
  height: 10px;
  -webkit-clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
          clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
  transform: scale(0);
  transform-origin: bottom left;
  transition: 120ms transform ease-in-out;
  /* Windows High Contrast Mode */
  background-color: black;
}
.form-control input[type=checkbox]:checked {
  background: black;
}
.form-control input[type=checkbox]:checked::before {
  transform: scale(1);
  background: white;
}
.btn--hide-modal {
  display: flex;
  padding: 0;
  align-items: center;
  background: white;
  -webkit-appearance: none;
  border: none;
  position: absolute;
  left: 60px;
  top: 22px;
  cursor: pointer;
}
.btn--hide-modal svg {
  width: 36px;
  margin-right: 10px;
}
@media only screen and (max-width: 1000px) {
  .btn--hide-modal {
    left: 40px;
  }
}
@media only screen and (max-width: 800px) {
  .btn--hide-modal {
    left: 20px;
  }
}
@media only screen and (max-width: 600px) {
  .btn--hide-modal {
    left: 10px;
  }
}

.has-relative-btn {
  text-align: center;
  margin-top: 10px;
}
@media only screen and (min-width: 600.11px) {
  .has-relative-btn {
    display: none;
  }
}

.modal-smoke {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  background: black;
  opacity: 0.8;
  transition: opacity 0.25s;
  z-index: 888;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
  pointer-events: none;
  opacity: 1;
  transition: opacity 0.5s;
}
.modal .module--modal-content {
  transition: 0.25s;
  pointer-events: all;
  position: relative;
  z-index: 3;
}

.modal.S-hidden {
  height: 100%;
  overflow: hidden;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.5s;
}
.modal.S-hidden .module--modal-content {
  transform: translateY(40px);
  opacity: 0;
}

.modal-smoke.S-hidden {
  height: 0;
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
}

.section--modal {
  transform: translate3d(0, 100%, 0);
}

.S-has--modal .section--modal {
  transform: translate3d(0, 0, 0);
  transition: 0.75s;
}

.section--modal {
  min-height: 100vh;
}
@media only screen and (max-width: 700px) {
  .section--modal {
    padding: 16px 0;
  }
}
@media only screen and (max-width: 500px) {
  .section--modal {
    padding: 16px 0;
  }
}

.module--modal-content {
  max-width: 1200px;
  margin: auto;
  font-weight: 400;
  padding: 60px;
  background: white;
  border-radius: 0.4rem;
  color: black;
}
@media only screen and (max-width: 1000px) {
  .module--modal-content {
    padding: 60px 40px;
  }
}
@media only screen and (max-width: 800px) {
  .module--modal-content {
    padding: 60px 20px;
  }
}
@media only screen and (max-width: 600px) {
  .module--modal-content {
    padding: 60px 10px;
  }
}
.module--modal-content h4 {
  margin-top: 0;
}
.module--modal-content select {
  font-weight: 400;
  margin-bottom: 20px;
  font-weight: inherit;
  font-size: 1.6rem;
  color: black;
  border-radius: 4px;
  padding: 10px 10px;
}
.module--modal-content input, .module--modal-content textarea {
  margin-bottom: 20px;
  font-weight: 400;
  padding: 10px 10px;
  font-size: 1.5rem;
  border-radius: 3px;
  color: black;
}
.module--modal-content input:focus, .module--modal-content textarea:focus {
  border: 1px solid black;
  background: white;
}
.module--modal-content label {
  font-size: 1.2rem;
  font-weight: 500;
  margin-bottom: 4px;
  color: #393939;
}

.modal-item.S-disabled__item {
  display: none;
}

.modal-item__header .-content {
  max-width: 75%;
}
@media only screen and (max-width: 1000px) {
  .modal-item__header .-content {
    max-width: 95%;
  }
}
.modal-item__header h5 {
  margin-top: 30px;
}
.modal-item__header p {
  margin-top: 30px;
}

.modal-item__header--has-image {
  display: flex;
}
@media only screen and (max-width: 1000px) {
  .modal-item__header--has-image {
    display: block;
  }
}
.modal-item__header--has-image .-image {
  min-width: 33.33%;
  width: 33.33%;
  margin-right: 40px;
  border-radius: 8px;
  overflow: hidden;
}
@media only screen and (max-width: 1000px) {
  .modal-item__header--has-image .-image {
    width: 220px;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 400px) {
  .modal-item__header--has-image .-image {
    width: 100%;
    margin-bottom: 20px;
  }
}
.modal-item__header--has-image .-image img {
  border-radius: 8px;
  overflow: hidden;
}
.modal-item__header--has-image ul {
  all: unset;
  display: flex;
  flex-direction: column;
  margin-top: 20px;
}
.modal-item__header--has-image li {
  all: unset;
  color: #00d084;
}

.modal-item__card-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 40px;
}
.modal-item__card-wrap .cell {
  width: calc(50% - 20px);
  margin: 10px;
  background: #EBE4CF;
}
@media only screen and (max-width: 1000px) {
  .modal-item__card-wrap .cell {
    width: calc(100%);
    margin: 0px;
    margin-bottom: 10px;
  }
}
.modal-item__card-wrap .cell.-full {
  width: calc(75% - 20px);
}
@media only screen and (max-width: 1000px) {
  .modal-item__card-wrap .cell.-full {
    width: calc(100%);
    margin: 0px;
    margin-bottom: 10px;
  }
}

.modal-item__card-wrap .cell p {
  font-size: 1.6rem;
  line-height: 1.2;
}

.modal-item__header .-cat {
  color: #04aef2;
  text-transform: uppercase;
  margin-bottom: 20px;
  display: inline-block;
  font-size: 1.6rem;
  line-height: 1;
}

.modal-item__footer {
  margin-top: 40px;
  text-align: center;
}
.modal-item__footer h5 {
  font-size: 2rem;
}
.modal-item__footer p {
  font-size: 1.6rem;
}
.modal-item__footer .capsule-wrap {
  margin-top: 40px;
}

.modal-item__avatars {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.modal-item__avatars > div {
  padding-bottom: 0;
  min-width: 150px;
  max-width: calc(25% - 20px);
  margin: 0 10px;
  margin: 0 10px;
}

.modal-contact-info--top a {
  margin-right: 10px;
  margin-bottom: 10px;
}
.modal-contact-info--bottom {
  text-align: center;
  /* background: #faf8f2; */
  padding: 20px;
  /* width: 50%; */
  margin: auto;
  /* border-radius: 10px; */
  /* border-top: solid 1px #d7d7d7; */
  /* border-bottom: solid 1px grey; */
  margin-top: 60px;
}

.modal-contact-info--card a {
  font-size: 1.3rem;
  margin-right: 10px;
  margin-bottom: 10px;
  color: #696973;
}

.modal-contact-form {
  padding: 20px;
  border-radius: 10px;
  opacity: 0;
  transition: all 0.3s;
  transform: translateY(20px);
}

.modal-contact-form.S-hidden {
  display: none;
}

.section--page-header {
  padding-top: 0;
}

h1.tag {
  color: #04aef2;
  text-transform: uppercase;
  font-size: 1.6rem;
  margin-bottom: 30px;
}
@media only screen and (max-width: 1100px) {
  h1.tag {
    font-size: 1.4rem;
    margin-top: 10px;
  }
}

.module--header-block {
  background: #EBE4CF;
  border-radius: 16px;
  overflow: hidden;
}
@media only screen and (min-width: 1600px) {
  .module--header-block {
    font-size: 1.9rem;
  }
}
.module--header-block .flx-container {
  display: flex;
  width: 100%;
}
@media only screen and (max-width: 1100px) {
  .module--header-block .flx-container {
    display: block;
  }
}
.module--header-block .cell {
  width: 50%;
  min-width: 50%;
  position: relative;
  flex: 1;
}
.module--header-block .header-block__meta {
  width: auto;
  max-width: 1200px;
}
@media only screen and (max-width: 1100px) {
  .module--header-block .header-block__meta {
    min-height: auto !important;
  }
}
.module--header-block .page-template-materiaalit .header-block__meta {
  padding-left: 40px;
  padding-right: 40px;
  text-align: center;
}
.module--header-block .page-template-materiaalit .module--header-block .flx-container {
  justify-content: center;
}
.module--header-block .page-template-materiaalit .module--header-block p {
  margin: auto;
}
.module--header-block .page-template-podcast .header-block__meta {
  padding-left: 40px;
  padding-right: 40px;
  text-align: center;
}
.module--header-block .page-template-podcast .module--header-block .flx-container {
  justify-content: center;
}
.module--header-block .page-template-podcast .module--header-block p {
  margin: auto;
}
.module--header-block.module--header-block--has-img .cell {
  min-height: 570px;
}
@media only screen and (max-width: 1400px) {
  .module--header-block.module--header-block--has-img .cell {
    min-height: 400px;
  }
}
.module--header-block h1 {
  color: #04aef2;
  text-transform: uppercase;
  font-size: 1.6rem;
  margin-bottom: 30px;
}
@media only screen and (max-width: 1100px) {
  .module--header-block h1 {
    font-size: 1.4rem;
    margin-top: 10px;
  }
}
.module--header-block h2 {
  margin-bottom: 30px;
}
.module--header-block p {
  max-width: 700px;
}
@media only screen and (max-width: 1100px) {
  .module--header-block .header-block__img {
    width: 100%;
  }
}
@media only screen and (max-width: 500px) {
  .module--header-block .header-block__img {
    min-height: 300px;
    width: 100%;
  }
}
.module--header-block .header-block__img .placeholder-img {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.module--header-block .header-block__img .placeholder-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.module--header-block--no-img .header-block__meta {
  margin: auto;
  text-align: center;
}
.module--header-block--no-img .header-block__meta p {
  margin-left: auto;
  margin-right: auto;
}

.section-theme--dark .module--header-block {
  background: black;
}

.module--workshop-app {
  background: #EBE4CF;
  border-radius: 16px;
  overflow: hidden;
}
@media only screen and (min-width: 700px) and (max-width: 1700px) {
  .module--workshop-app {
    padding: 60px;
  }
}
@media only screen and (min-width: 700px) and (max-width: 1650px) {
  .module--workshop-app {
    padding: 40px;
  }
}

.workshop-nav {
  position: relative;
  padding-bottom: 30px;
  margin-bottom: 60px;
  border-bottom: solid 1px rgba(0,0,0,0.14902);
}
@media only screen and (max-width: 1650px) {
  .workshop-nav {
    padding-bottom: 20px;
  }
}
.workshop-nav button, .workshop-nav a {
  margin-right: 10px;
  margin-bottom: 10px;
  display: inline-block;
}
.workshop-nav button span, .workshop-nav a span {
  color: #04aef2;
  pointer-events: none;
  transition: 0.5s;
}
.workshop-nav button:hover span, .workshop-nav a:hover span {
  color: #00d084;
}
.workshop-nav .S-active span {
  color: #00d084;
}

.workshop-group {
  margin-bottom: 60px;
  justify-content: space-between;
}
@media only screen and (max-width: 1100px) {
  .workshop-group {
    display: block;
  }
}

.aside-heading {
  min-width: 40%;
  max-width: 50%;
  margin-bottom: 40px;
}
@media only screen and (max-width: 1100px) {
  .aside-heading {
    width: auto;
    max-width: 90%;
  }
}
.aside-heading h3 {
  margin-bottom: 0.4em;
}

.group-desciption {
  color: #696973;
}

.aside-content {
  flex-grow: 1;
}

.workshop-group__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.workshop-item {
  width: calc(50% - 10px);
  margin-bottom: 20px;
}
@media only screen and (min-width: 0px) and (max-width: 1050px) {
  .workshop-item {
    width: calc(100%);
  }
}

@media only screen and (min-width: 0px) and (max-width: 800px) {
  .workshop-item .cell {
    width: 100%;
    display: flex;
    flex-direction: column;
  }
  .workshop-item .cell:last-of-type {
    margin-top: 30px;
  }
  .workshop-item .cell .capsule-wrap {
    margin-top: 20px;
    margin-bottom: 10px;
  }
}
@media only screen and (min-width: 800.11px) and (max-width: 1050px) {
  .workshop-item .cell {
    width: 50%;
    display: flex;
    flex-direction: column;
  }
  .workshop-item .cell:first-of-type {
    padding-right: 30px;
    border-right: solid 1px rgba(0,0,0,0.14902);
  }
  .workshop-item .cell:last-of-type {
    padding-left: 30px;
  }
  .workshop-item .cell .capsule-wrap {
    margin-top: 20px;
    margin-bottom: 16px;
  }
}
@media only screen and (min-width: 1050.11px) and (max-width: 1600px) {
  .workshop-item .cell {
    width: 100%;
    display: flex;
    flex-direction: column;
  }
  .workshop-item .cell:last-of-type {
    margin-top: 30px;
  }
  .workshop-item .cell .capsule-wrap {
    margin-top: 20px;
    margin-bottom: 10px;
  }
}
@media only screen and (min-width: 1600.11px) {
  .workshop-item .cell {
    width: 50%;
    display: flex;
    flex-direction: column;
  }
  .workshop-item .cell:first-of-type {
    padding-right: 30px;
    border-right: solid 1px rgba(0,0,0,0.14902);
  }
  .workshop-item .cell:last-of-type {
    padding-left: 30px;
  }
  .workshop-item .cell .capsule-wrap {
    margin-top: 20px;
    margin-bottom: 16px;
  }
}
.workshop-group-wrap {
  transition: all 0.25s;
  transform: translateY(0);
}

.S-animating--filters .workshop-group-wrap {
  opacity: 0;
}

.workshop-group.S-disabled__item {
  display: none !important;
}

.on-page .workshop-nav {
  display: none;
}
.on-page #johtaminen, .on-page #tiimityo {
  display: none;
}
.on-page .aside-heading {
  display: none;
}

.basic-card__image {
  overflow: hidden;
}

.placeholder-img {
  display: flex;
}

.home-header-image {
  height: 0;
  padding-top: 50%;
  margin-top: 20px;
}
@media screen and (min-width: 1200.11px) {
  .home-header-image {
    height: 600px;
    max-height: 90vh;
    padding-top: 0;
    margin-top: 40px;
  }
}
.home-header-image .lazy-img {
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 1050.11px) {
  h1.home-title {
    padding-right: 30px;
  }
}
@media screen and (max-width: 700px) {
  h1.home-title .label {
    max-width: 400px;
    max-width: 350px;
    font-size: 1.1rem;
    line-height: 1.3;
    top: -4em;
  }
}
@media screen and (max-width: 600px) {
  h1.home-title .label {
    font-size: 1.1rem;
  }
}

.module--home-news {
  border-bottom: dotted 1px;
  padding-bottom: 20px;
}
.module--home-news .flx-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.module--home-news .cell {
  width: calc(50% - 24px);
  position: relative;
  min-height: 100px;
}
.see-all-link {
  display: flex;
  justify-content: flex-end;
  padding-top: 10px;
}
@media screen and (max-width: 600px) {
  .see-all-link {
    padding-top: 6px;
  }
}
.see-all-link a {
  font-family: "sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  color: #808080;
}
@media screen and (max-width: 600px) {
  .see-all-link a {
    font-size: 1.6rem;
  }
}
.see-all-link a:hover {
  color: #00CE83;
}

.S--no-events .section--home-events .see-all-link {
  display: none;
}

.S--no-events .section--home-events .sidebar-h2 {
  opacity: 0.5;
}

.news-cell .basic-card__inner {
  align-items: flex-start;
  padding-left: 0;
}
.news-cell .-header {
  display: inline-flex;
}
.news-cell .basic-card__content {
  padding-left: 0;
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
}
.news-cell .basic-card__image {
  width: 33.33%;
  min-width: 33.33%;
  padding-top: 36px;
}
.news-cell .-desc {
  display: none;
}

.news-cell__date {
  width: 33.33%;
}

@media screen and (min-width: 1000.11px) {
  .news-cell:nth-of-type(1) {
    border-top: dotted 1px;
  }

  .news-cell:nth-of-type(1), .news-cell:nth-of-type(2), .event-cell, .archive-news-cell {
    width: 100%;
    border-bottom: dotted 1px;
    padding: 48px 0;
  }
  .news-cell:nth-of-type(1) .basic-card__content, .news-cell:nth-of-type(2) .basic-card__content, .event-cell .basic-card__content, .archive-news-cell .basic-card__content {
    padding-right: 40px;
    max-width: 900px;
    font-size: 2.2rem;
  }
}
@media screen and (min-width: 1000.11px) and (max-width: 2000px) {
  .news-cell:nth-of-type(1) .basic-card__content, .news-cell:nth-of-type(2) .basic-card__content, .event-cell .basic-card__content, .archive-news-cell .basic-card__content {
    padding-right: 3vw;
  }
}
@media screen and (min-width: 1000.11px) {
  .news-cell:nth-of-type(1) .-desc, .news-cell:nth-of-type(2) .-desc, .event-cell .-desc, .archive-news-cell .-desc {
    display: block;
  }
}
@media screen and (min-width: 1000.11px) {
  .news-cell:nth-of-type(1) .-title, .news-cell:nth-of-type(2) .-title, .event-cell .-title, .archive-news-cell .-title {
    margin: 1.5rem 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    font-size: 3rem;
    font-size: clamp(2.8rem, 2.5vw, 3.4rem);
    line-height: 1.1;
  }
}
@media screen and (min-width: 1000.11px) {
  .news-cell:nth-of-type(1) .-desc, .news-cell:nth-of-type(2) .-desc, .event-cell .-desc, .archive-news-cell .-desc {
    font-size: 2rem;
    line-height: 1.3;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
  .news-cell:nth-of-type(1) .-desc p, .news-cell:nth-of-type(2) .-desc p, .event-cell .-desc p, .archive-news-cell .-desc p {
    margin: 0;
  }
}
@media screen and (min-width: 1000.11px) {
  .news-cell:nth-of-type(3).home-news-cell .-desc, .news-cell:nth-of-type(3).home-news-cell .basic-card__image, .news-cell:nth-of-type(4).home-news-cell .-desc, .news-cell:nth-of-type(4).home-news-cell .basic-card__image, .news-cell:nth-of-type(5).home-news-cell .-desc, .news-cell:nth-of-type(5).home-news-cell .basic-card__image, .news-cell:nth-of-type(6).home-news-cell .-desc, .news-cell:nth-of-type(6).home-news-cell .basic-card__image {
    display: none;
  }
  .news-cell:nth-of-type(3).home-news-cell .-title, .news-cell:nth-of-type(4).home-news-cell .-title, .news-cell:nth-of-type(5).home-news-cell .-title, .news-cell:nth-of-type(6).home-news-cell .-title {
    margin: 1.5rem 0;
    font-size: 2.2rem;
    font-size: clamp(2rem, 2vw, 2.2rem);
    line-height: 1.3;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    font-family: "serif-regular", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    letter-spacing: normal;
  }
  .news-cell:nth-of-type(3).home-news-cell .-desc, .news-cell:nth-of-type(4).home-news-cell .-desc, .news-cell:nth-of-type(5).home-news-cell .-desc, .news-cell:nth-of-type(6).home-news-cell .-desc {
    font-size: 2rem;
  }
  .news-cell:nth-of-type(3).home-news-cell .-desc p, .news-cell:nth-of-type(4).home-news-cell .-desc p, .news-cell:nth-of-type(5).home-news-cell .-desc p, .news-cell:nth-of-type(6).home-news-cell .-desc p {
    margin: 0;
  }
}
@media screen and (min-width: 1000.11px) {
  .news-cell:nth-of-type(2).home-news-cell {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 1000.11px) {
  .news-cell:nth-of-type(3).home-news-cell:after, .news-cell:nth-of-type(5).home-news-cell:after {
    content: "";
    position: absolute;
    width: 1px;
    height: 100%;
    top: 0;
    right: -27px;
    background-color: #c5c5c5;
  }
}
@media screen and (min-width: 1000.11px) {
  .news-cell:nth-of-type(5).home-news-cell, .news-cell:nth-of-type(6).home-news-cell {
    padding-top: 20px;
  }
  .news-cell:nth-of-type(5).home-news-cell:before, .news-cell:nth-of-type(6).home-news-cell:before {
    content: "";
    position: absolute;
    height: 1px;
    width: 100%;
    top: 0;
    left: 0;
    background-color: #c5c5c5;
  }
}
@media screen and (max-width: 1600px) and (min-width: 1000.11px) {
  .news-cell:nth-of-type(1), .news-cell:nth-of-type(2), .event-cell, .archive-news-cell {
    padding: 3.1vw 0;
  }
}
@media screen and (max-width: 1000px) {
  .news-cell:nth-of-type(1) {
    border-top: dotted 1px;
  }

  .section--home-news .news-cell .-header {
    margin-bottom: 14px;
  }
  .section--home-news .news-cell .-title {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  .section--home-news .news-cell:nth-of-type(1) {
    width: 100%;
    border-bottom: dotted 1px;
    padding: 0;
    margin-bottom: 20px;
    padding: 40px 0;
  }
  .section--home-news .news-cell:nth-of-type(1) .basic-card__content {
    padding-right: 60px;
  }
}
@media screen and (max-width: 1000px) and (max-width: 2000px) {
  .section--home-news .news-cell:nth-of-type(1) .basic-card__content {
    padding-right: 3vw;
  }
}
@media screen and (max-width: 1000px) {
  .section--home-news .news-cell:nth-of-type(1) .basic-card__content .-title {
    line-height: 1.2;
    font-size: 2rem;
    font-size: clamp(2.4rem, 3vw, 2.6rem);
    -webkit-line-clamp: 3;
  }
}
@media screen and (max-width: 1000px) {
  .section--home-news .news-cell:nth-of-type(1) .-desc {
    display: block;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-height: 1.3;
  }
  .section--home-news .news-cell:nth-of-type(1) .-desc p {
    display: block;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-height: 1.3;
    margin: 0;
  }
}
@media screen and (max-width: 1000px) {
  .section--home-news .news-cell:nth-of-type(2) .basic-card__image, .section--home-news .news-cell:nth-of-type(4) .basic-card__image {
    display: none;
  }
  .section--home-news .news-cell:nth-of-type(2) .-title, .section--home-news .news-cell:nth-of-type(4) .-title {
    font-family: "serif-regular", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    letter-spacing: normal;
  }
  .section--home-news .news-cell:nth-of-type(2):after, .section--home-news .news-cell:nth-of-type(4):after {
    content: "";
    position: absolute;
    width: 1px;
    height: 100%;
    top: 0;
    right: -27px;
    background-color: #c5c5c5;
  }
}
@media screen and (max-width: 1000px) {
  .section--home-news .news-cell:nth-of-type(3) .basic-card__image {
    display: none;
  }
  .section--home-news .news-cell:nth-of-type(3) .-title {
    font-family: "serif-regular", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    letter-spacing: normal;
  }
}
@media screen and (max-width: 1000px) {
  .section--home-news .news-cell:nth-of-type(4), .section--home-news .news-cell:nth-of-type(5) {
    padding-top: 20px;
  }
  .section--home-news .news-cell:nth-of-type(4) .basic-card__image, .section--home-news .news-cell:nth-of-type(5) .basic-card__image {
    display: none;
  }
  .section--home-news .news-cell:nth-of-type(4) .-title, .section--home-news .news-cell:nth-of-type(5) .-title {
    font-family: "serif-regular", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    letter-spacing: normal;
  }
  .section--home-news .news-cell:nth-of-type(4):before, .section--home-news .news-cell:nth-of-type(5):before {
    content: "";
    position: absolute;
    height: 1px;
    width: 100%;
    top: 0;
    left: 0;
    background-color: #c5c5c5;
  }
}
@media screen and (max-width: 1000px) {
  .section--home-news .news-cell:nth-of-type(6) {
    display: none;
  }
}
@media screen and (max-width: 1000px) {
  .news-cell .-header {
    margin-bottom: 14px;
  }

  .archive-news-cell {
    width: 100%;
    border-bottom: dotted 1px;
    padding: 0;
    padding: 30px 0;
    padding: 20px 0;
    padding-bottom: 40px;
  }
  .archive-news-cell .basic-card__content {
    padding-right: 60px;
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 1000px) and (max-width: 2000px) {
  .archive-news-cell .basic-card__content {
    padding-right: 3vw;
  }
}
@media screen and (max-width: 1000px) {
  .archive-news-cell .basic-card__content .-title {
    line-height: 1.2;
    font-size: 2rem;
    margin: 0;
    font-size: clamp(2.2rem, 3vw, 2.6rem);
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
}
@media screen and (max-width: 1000px) {
  .archive-news-cell .-desc {
    margin-top: 0.25em;
    display: block;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: none;
  }
  .archive-news-cell .-desc p {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 600px) {
  .section--home-news .news-cell .-header {
    margin-bottom: 6px;
  }
  .section--home-news .news-cell .basic-card__inner {
    flex-wrap: wrap;
  }
  .section--home-news .news-cell .basic-card__content {
    padding: 0;
  }
  .section--home-news .news-cell .basic-card__image {
    width: 100%;
    padding-top: 20px;
  }
  .section--home-news .news-cell .-title {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    font-size: 1.5rem;
    font-family: "serif-regular", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    letter-spacing: normal;
  }
  .section--home-news .news-cell:nth-of-type(1) {
    padding: 20px 0;
  }
  .section--home-news .news-cell:nth-of-type(1) .-title {
    font-family: "sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    letter-spacing: 0.6px;
  }
  .section--home-news .news-cell:nth-of-type(1) .-title {
    margin-bottom: 0.5em;
  }
  .section--home-news .news-cell:nth-of-type(2) .basic-card__image, .section--home-news .news-cell:nth-of-type(4) .basic-card__image {
    display: none;
  }
  .section--home-news .news-cell:nth-of-type(2):after, .section--home-news .news-cell:nth-of-type(4):after {
    content: "";
    position: absolute;
    width: 1px;
    height: 100%;
    top: 0;
    right: -12px;
    background-color: #c5c5c5;
  }
  .section--home-news .news-cell:nth-of-type(3) .basic-card__image {
    display: none;
  }
  .section--home-news .news-cell:nth-of-type(4), .section--home-news .news-cell:nth-of-type(5) {
    padding-top: 20px;
  }
  .section--home-news .news-cell:nth-of-type(4) .basic-card__image, .section--home-news .news-cell:nth-of-type(5) .basic-card__image {
    display: none;
  }
  .section--home-news .news-cell:nth-of-type(4):before, .section--home-news .news-cell:nth-of-type(5):before {
    content: "";
    position: absolute;
    height: 1px;
    width: 100%;
    top: 0;
    left: 0;
    background-color: #c5c5c5;
  }

  .archive-news-cell .basic-card__image {
    width: 25%;
    min-width: 25%;
  }
}
.news-cell .tag, .event-cell .tag {
  transition: color 0s;
}

.news-cell .tag {
  margin-right: 8px;
  white-space: nowrap;
}
@media screen and (max-width: 800px) {
  .news-cell .tag {
    display: none;
  }
}

.news-cell .tag:after {
  content: ",";
}

.cat-link:after {
  content: ",";
}

.news-cell .tag:last-of-type:after {
  content: "";
}

.cat-link:last-of-type:after {
  content: "";
}

.event-cell:first-of-type {
  border-top: dotted 1px;
}

.event-cell .-title {
  font-size: 2.8rem;
}
.event-cell .-header {
  display: inline-flex;
}
.event-cell .tag {
  color: #808080;
}
.event-cell .basic-card__content {
  padding: 0;
  padding-right: 20px;
}
.event-cell .basic-card__content .-signup, .event-cell .basic-card__content .-date-time {
  margin: 0;
  font-size: 1.8rem;
}
@media screen and (max-width: 600px) {
  .event-cell .basic-card__content .-signup, .event-cell .basic-card__content .-date-time {
    font-size: 1.6rem;
  }
}
.event-cell .basic-card__content .-signup {
  margin-top: 1em;
  font-size: 1.3rem;
  padding-left: 14px;
  position: relative;
}
.event-cell .basic-card__content .-signup:before {
  content: "";
  width: 6px;
  height: 6px;
  background: #00ce83;
  position: absolute;
  border-radius: 30px;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
.event-cell .basic-card__content .-signup--coming:before {
  background: #ff8517;
}
.event-cell .basic-card__content .-signup--none {
  padding-left: 0;
}
.event-cell .basic-card__content .-signup--none:before {
  display: none;
}
.event-cell .basic-card__content .-date-time {
  letter-spacing: 1.8px;
}
.event-cell .basic-card__image {
  width: 25%;
  min-width: 25%;
  height: 100%;
}

@media screen and (max-width: 1000px) {
  .event-cell {
    padding: 20px 0;
    border-bottom: solid 1px #c5c5c5;
  }
  .event-cell .-title {
    margin-top: 10px;
    line-height: 1.2;
    font-size: 2rem;
    font-size: clamp(2rem, 3vw, 2.4rem);
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 800px) {
  .event-cell .basic-card__inner {
    flex-wrap: wrap;
    position: relative;
  }

  .event-date-box {
    width: 100% !important;
    margin-bottom: 10px;
  }

  .event-date-box:after {
    display: none;
  }

  .event-cell .basic-card__content {
    max-width: 75%;
  }
}
@media screen and (max-width: 600px) {
  .event-cell .basic-card__content {
    max-width: 100%;
  }

  .module--home-events .event-cell .basic-card__image {
    position: absolute;
    right: 0px;
    top: 0;
    height: 58px;
    max-height: 58px;
    /* width: 50px; */
    overflow: hidden;
  }

  .module--past-events-latest .event-cell .basic-card__image {
    display: none;
  }
}
.-signup, .past-event-tag, .recap-info {
  margin-top: 1em;
  font-size: 1.3rem;
  padding-left: 14px;
  position: relative;
}

.past-event-tag {
  padding-left: 0;
  text-transform: uppercase;
  font-size: 1.2rem;
  color: #808080;
}

.recap-info {
  padding-left: 0;
  display: flex;
  align-items: center;
}
.recap-info svg {
  margin-right: 8px;
  height: 20px;
  width: auto;
}

.past-event-filter.recap-info {
  display: flex;
  align-items: center;
}
.past-event-filter.recap-info svg {
  margin-right: 8px;
  height: 24px;
  width: auto;
}

.S--has-event-filters .past-event-filter.recap-info {
  opacity: 1 !important;
}
.S--has-event-filters .past-event-filter.all-past {
  opacity: 0.5;
}
.S--has-event-filters .event-cell.no-recap {
  opacity: 0.4;
  transition: opacity 0.4s;
}

.event-cell.no-recap {
  transition: opacity 0.4s;
}

.-events-topics p {
  font-size: 1.6rem;
  color: #808080;
  max-width: 80%;
  margin-top: 20px;
}
.-events-topics p svg {
  fill: grey;
  width: 14px;
  fill: grey;
  width: 15px;
  margin-right: 2px;
  /* margin-top: 5px; */
  transform: translateY(2px);
}

.-signup:before {
  content: "";
  width: 6px;
  height: 6px;
  background: #00ce83;
  position: absolute;
  border-radius: 30px;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}

.-signup--coming:before {
  background: #ff8517;
}

.-signup--none {
  padding-left: 0;
}

.-signup--none:before {
  display: none;
}

.event-date-box {
  width: 25%;
  min-width: 25%;
  position: relative;
}
.event-date-box .-day {
  font-size: 12rem;
  line-height: 0.8;
  margin: 0;
}
@media screen and (max-width: 1300px) {
  .event-date-box .-day {
    font-size: 10rem;
  }
}
@media screen and (max-width: 1200px) {
  .event-date-box .-day {
    font-size: 10vw;
    font-size: clamp(5.6rem, 10vw, 10rem);
  }
}
.event-date-box:after {
  content: "";
  position: absolute;
  width: 1px;
  height: 100%;
  top: 0;
  right: 30px;
  background-color: #c5c5c5;
}
.event-date-box .-month {
  margin: 0;
}

.single-heading {
  padding: 60px 0;
}
@media screen and (max-width: 600px) {
  .single-heading {
    padding: 40px 0;
  }
}
.single-heading .single-heading__inner {
  position: relative;
}
.single-heading h3 {
  max-width: 60%;
  margin: 0;
}
@media screen and (max-width: 600px) {
  .single-heading h3 {
    max-width: 100%;
  }
}
.single-heading .capsule-wrap {
  margin: 0;
  margin-top: 2rem;
}
.single-heading .capsule-wrap a {
  margin: 0;
}
@media screen and (min-width: 700.11px) {
  .single-heading .capsule-wrap {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
  }
  .single-heading .capsule-wrap a {
    margin: 0;
  }
}

.section--home-companies {
  border-top: solid 1px #c5c5c5;
  border-bottom: solid 1px #c5c5c5;
}
.section--home-companies .bg-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.section--home-companies .bg-image .lazy-anim.lazyloaded, .section--home-companies .bg-image .lazyanim.lazyloaded {
  opacity: 0.2;
}

.section--home-companies .lazy-anim.lazyloaded, .section--home-companies .lazyanim.lazyloaded {
  opacity: 0.2;
}

.header-with-cta {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 600px) {
  .header-with-cta {
    display: block;
    margin-bottom: 20px;
  }
}
.header-with-cta h2 {
  margin: 20px 0;
}
.header-with-cta .header-cta {
  display: flex;
  align-items: center;
}

@media screen and (min-width: 900.11px) {
  .section--featured-past-events .module--past-events-latest .flx-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-top: solid 1px #c5c5c5;
    border-bottom: solid 1px #c5c5c5;
    border-top: dotted 1px;
    border-bottom: dotted 1px;
    padding: 24px 0;
  }
  .section--featured-past-events .module--past-events-latest .event-cell {
    width: calc(50% - 24px);
    position: relative;
    border: none;
    padding: 24px 0;
  }
  .section--featured-past-events .module--past-events-latest .event-cell:nth-of-type(1), .section--featured-past-events .module--past-events-latest .event-cell:nth-of-type(2) {
    border-bottom: solid 1px #c5c5c5;
  }
  .section--featured-past-events .module--past-events-latest .event-cell:nth-of-type(1), .section--featured-past-events .module--past-events-latest .event-cell:nth-of-type(2) {
    padding-top: 0;
  }
  .section--featured-past-events .module--past-events-latest .event-cell:nth-of-type(3), .section--featured-past-events .module--past-events-latest .event-cell:nth-of-type(4) {
    padding-bottom: 0;
  }
  .section--featured-past-events .module--past-events-latest .basic-card__inner {
    align-items: flex-start;
  }
  .section--featured-past-events .module--past-events-latest .basic-card__image {
    height: auto;
  }
}
@media screen and (min-width: 900.11px) and (max-width: 1300px) {
  .section--featured-past-events .module--past-events-latest .basic-card__image {
    display: none;
  }
}
@media screen and (min-width: 900.11px) {
  .section--featured-past-events .module--past-events-latest .event-cell .-title {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
}
@media screen and (min-width: 900.11px) {
  .section--featured-past-events .module--past-events-latest .event-cell:nth-of-type(1):after, .section--featured-past-events .module--past-events-latest .event-cell:nth-of-type(3):after {
    content: "";
    position: absolute;
    width: 1px;
    height: 101%;
    top: 0;
    right: -27px;
    background-color: #c5c5c5;
  }
}
.form-data-events {
  display: none;
}

.single-tapahtumat .form-data-events {
  display: block;
}

.single-tapahtumat .form-data-events {
  position: absolute;
  top: 0;
  right: 20px;
  font-weight: 600;
  font-size: 1.4rem;
  right: 0;
  margin: 0;
  top: -40px;
  background: black;
  color: white;
  padding: 10px;
}

.forminator-design--material .forminator-label[class*=forminator-floating-] {
  color: black !important;
}

.forminator-design--material .forminator-input--wrap:after {
  background-color: black !important;
  height: 1px !important;
}

.forminator-response-message {
  box-shadow: none !important;
  border-top: solid 1px #cccccc;
  border-radius: 0 !important;
}

.forminator-response-message.forminator-loading p {
  opacity: 0;
}

.forminator-radio span[aria-hidden]:before {
  border-color: #00ce83;
  background-color: #00ce83;
}

.module--jasenet-list {
  color: #3c3830;
}
.module--jasenet-list ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
}
.module--jasenet-list ul li {
  position: relative;
  margin-top: 16px;
  margin-right: 16px;
  min-width: 100px;
  min-width: 100px;
  min-height: 50px;
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 600px) {
  .module--jasenet-list ul li {
    font-size: 1.6rem;
    min-width: 40px;
    margin-top: 10px;
    margin-right: 10px;
  }
}
.module--jasenet-list ul li a {
  background: white;
  padding: 10px 20px;
  text-align: center;
  width: 100%;
}
.module--jasenet-list ul li:hover a {
  background: #333333;
  color: white;
}
.module--jasenet-list ul li:hover svg {
  opacity: 1 !important;
}
.module--jasenet-list ul li svg {
  position: absolute;
  right: 4px;
  top: 4px;
  width: 12px;
  opacity: 0;
}

.group_letter {
  z-index: 3;
  color: #808080;
  border-bottom: solid 1px #c5c5c5;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  position: relative;
  position: sticky;
  top: -1px;
  background: #fcf9f2;
  margin-top: 26px;
}
.group_letter:first-of-type {
  margin-top: 0;
}

.pjax-group-nav {
  display: flex;
  flex-direction: column;
}
.pjax-group-nav a {
  font-size: 3.4rem;
  position: relative;
  color: #808080;
}
@media screen and (max-width: 1360px) {
  .pjax-group-nav a {
    font-size: 2.8rem;
  }
}
.pjax-group-nav a:hover {
  color: #00CE83;
}

@media only screen and (max-width: 1200px) {
  .pjax-group-nav {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    border-top: dotted 1px;
    width: 100%;
    margin-bottom: 40px;
  }
  .pjax-group-nav a {
    margin-top: 14px;
    display: inline-block;
    max-width: 300px;
    line-height: 1;
  }

  .section--index-pages .sidebar-header__left {
    max-width: 100%;
  }
}
@media only screen and (max-width: 1200px) {
  .pjax-group-nav {
    display: block;
    padding-bottom: 20px;
    margin-top: -30px;
  }
  .pjax-group-nav a {
    margin-right: 30px;
    font-size: 2rem;
    margin-top: 18px;
    display: inline-flex;
  }
}
.active-pjax {
  color: #3c3830 !important;
}

.pjax-link--liity {
  margin-top: 14px;
  padding-top: 20px;
}
.pjax-link--liity span {
  background: #65dfaf;
  border-radius: 6px;
  padding: 8px 20px;
  color: black;
  font-size: 2.8rem;
}
@media only screen and (max-width: 1200px) {
  .pjax-link--liity {
    padding-top: 0px;
  }
  .pjax-link--liity span {
    padding: 8px 16px;
    font-size: 2rem;
  }
}

.pjax-link--liity:hover span {
  background: #00CE83;
}

.active-pjax.pjax-link--liity span {
  background: #00CE83;
}

.pjax-link--liity:before {
  content: "";
  width: 100%;
  height: 1px;
  background: #808080;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 1200px) {
  .pjax-link--liity:before {
    display: none;
  }
}

.person-item {
  border-bottom: solid 1px #c5c5c5;
  margin: 20px 0;
  margin-top: 0;
  padding: 20px 0;
  padding-top: 0;
  font-size: 2.2rem;
}
@media only screen and (max-width: 1400px) {
  .person-item {
    font-size: 2rem;
  }
}

.person-item__inner {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 750px) {
  .person-item__inner {
    flex-wrap: wrap;
  }
}

.p-name {
  font-family: "sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: 2.8rem;
  width: 35%;
  min-width: 350px;
}
@media only screen and (max-width: 1400px) {
  .p-name {
    font-size: 2.4rem;
    min-width: 350px;
  }
}
@media only screen and (max-width: 1000px) {
  .p-name {
    font-size: 2rem;
    min-width: 200px;
  }
}

@media only screen and (max-width: 750px) {
  .p-company {
    width: 100%;
  }
}

.p-title {
  flex-grow: 2;
  text-align: right;
  padding-right: 20px;
  color: #00CE83;
}
.p-title:empty {
  display: none;
}
@media only screen and (max-width: 750px) {
  .p-title {
    width: 100%;
    text-align: left;
    margin-top: 4px;
    font-size: 1.6rem;
  }
}

.section--home-companies {
  position: relative;
  overflow: hidden;
}

.marq-container {
  background: white;
  z-index: 3;
  position: relative;
  width: 100%;
  overflow-x: hidden;
  max-width: calc(100vw - 1px);
  width: 100%;
  padding: 22px 0;
  z-index: 2;
}
@media only screen and (max-width: 600px) {
  .marq-container {
    padding: 16px 0;
  }
}

.-top {
  top: 0;
  left: 0;
}

.-bottom {
  bottom: 0;
  left: 0;
}

.marquee {
  display: flex;
  flex-wrap: nowrap;
  white-space: nowrap;
  min-width: 100%;
}

.marquee .marquee__inner {
  display: flex;
  flex-shrink: 0;
  position: relative;
  align-items: center;
}

.-top .marquee__inner {
  -webkit-animation: slide-left 30s linear infinite;
          animation: slide-left 30s linear infinite;
}

.-bottom .marquee__inner {
  -webkit-animation: slide-left 70s linear infinite;
          animation: slide-left 70s linear infinite;
}

.marquee span {
  font-size: 2rem;
  margin-right: 31px;
  text-transform: uppercase;
  line-height: 1;
  position: relative;
}
@media only screen and (max-width: 600px) {
  .marquee span {
    font-size: 1.6rem;
  }
}

.marquee span:before {
  content: "";
  position: absolute;
  height: 6px;
  width: 6px;
  top: 50%;
  border-radius: 999px;
  background: #00CE83;
  transform: translateY(-50%);
  left: -18px;
}

@-webkit-keyframes slide-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

@keyframes slide-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@-webkit-keyframes slide-right {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes slide-right {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
.pjax-wrap {
  opacity: 1;
  transform: none;
  transition: transform 0.3s, opacity 0.3s;
  min-height: 80vh;
  position: relative;
}

.hae-jaseneksi-container {
  background: white;
  padding: 40px;
}
@media only screen and (max-width: 600px) {
  .hae-jaseneksi-container {
    padding: 20px;
  }
}

#jasenet {
  padding-top: 20px;
}

.pjax-transition-container {
  opacity: 1;
  transform: none;
  transition: transform 0.3s, opacity 0.3s;
}

.pjax-loading .pjax-transition-container {
  opacity: 0;
  transform: translate3d(0, 20px, 0);
}

.shadow {
  width: 100%;
  position: absolute;
  display: flex;
  justify-content: flex-end;
  z-index: 1;
  opacity: 0.5;
  pointer-events: none;
}
.shadow img {
  width: 70vw;
}

.section--page-content .section-bg-container, .section--single-article .section-bg-container {
  padding-top: 0;
}

.text-columns {
  -moz-column-count: 2;
       column-count: 2;
  grid-column-gap: 0rem;
  -moz-column-gap: 0rem;
       column-gap: 0rem;
  -moz-column-fill: auto;
       column-fill: auto;
  max-width: 75%;
  margin: auto;
}
@media only screen and (max-width: 1200px) {
  .text-columns {
    max-width: 100%;
    margin: auto;
  }
}
@media only screen and (max-width: 700px) {
  .text-columns {
    -moz-column-count: 1;
         column-count: 1;
    grid-column-gap: 0rem;
    -moz-column-gap: 0rem;
         column-gap: 0rem;
    -moz-column-fill: auto;
         column-fill: auto;
    max-width: 75%;
  }
}
@media only screen and (max-width: 600px) {
  .text-columns {
    max-width: 100%;
  }
}
.text-columns p {
  padding-right: 3em;
}
@media only screen and (max-width: 1100px) {
  .text-columns p {
    padding-right: 2.2em;
  }
}
@media only screen and (max-width: 700px) {
  .text-columns p {
    padding-right: 0;
  }
}

.text-area {
  max-width: 75%;
  margin: auto;
}
@media only screen and (max-width: 600px) {
  .text-area {
    width: 100%;
    max-width: 100%;
  }
}

.text-area.slim-width {
  width: 50%;
  min-width: 700px;
}
@media only screen and (max-width: 1240px) {
  .text-area.slim-width {
    width: 100%;
    min-width: 100px;
    max-width: 75%;
  }
}
@media only screen and (max-width: 600px) {
  .text-area.slim-width {
    width: 100%;
    max-width: 100%;
  }
}

.solid-border-bottom {
  border-bottom: solid 1px #c5c5c5;
}

.dotted-border-bottom {
  border-bottom: dotted 1px;
}

/*--------------------------------------------------------------
# Post Card design
--------------------------------------------------------------*/
.post.card-item {
  border: 1px solid #007eac;
  border: 1px solid var(--highlight);
  padding: 15px;
  padding: var(--gutters);
}

/*------- ACF Menu block --------*/
.site .acf-menu {
  padding: 0;
}

.section-menu {
  background: #4c545d;
  background: var(--dark-grey);
}
.section-menu li {
  font-weight: normal;
}

/*# sourceMappingURL=frontEnd.css.map*/