@charset "UTF-8";
/*
 * Settings
 * used with preprocessors and contain font, colors definitions, etc.
 */
/*
 *  Project Settings
 *  ---
 *  Tweak default variables from '_settings.default.scss' to suit your project needs
 */
@font-face {
  font-family: "Volkart";
  src: url("../fonts/Volkart-ExtraBold.eot");
  src: url("../fonts/Volkart-ExtraBold.eot?#iefix") format("embedded-opentype"), url("../fonts/Volkart-ExtraBold.woff2") format("woff2"), url("../fonts/Volkart-ExtraBold.woff") format("woff"), url("../fonts/Volkart-ExtraBold.ttf") format("truetype");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: "Volkart";
  src: url("../fonts/Volkart-Italic.eot");
  src: url("../fonts/Volkart-Italic.eot?#iefix") format("embedded-opentype"), url("../fonts/Volkart-Italic.woff2") format("woff2"), url("../fonts/Volkart-Italic.woff") format("woff"), url("../fonts/Volkart-Italic.ttf") format("truetype");
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: "Volkart";
  src: url("../fonts/Volkart-Bold.eot");
  src: url("../fonts/Volkart-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Volkart-Bold.woff2") format("woff2"), url("../fonts/Volkart-Bold.woff") format("woff"), url("../fonts/Volkart-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Volkart";
  src: url("../fonts/Volkart-Light.eot");
  src: url("../fonts/Volkart-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/Volkart-Light.woff2") format("woff2"), url("../fonts/Volkart-Light.woff") format("woff"), url("../fonts/Volkart-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Volkart";
  src: url("../fonts/Volkart-Regular.eot");
  src: url("../fonts/Volkart-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/Volkart-Regular.woff2") format("woff2"), url("../fonts/Volkart-Regular.woff") format("woff"), url("../fonts/Volkart-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Volkart";
  src: url("../fonts/Volkart-BoldItalic.eot");
  src: url("../fonts/Volkart-BoldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/Volkart-BoldItalic.woff2") format("woff2"), url("../fonts/Volkart-BoldItalic.woff") format("woff"), url("../fonts/Volkart-BoldItalic.ttf") format("truetype");
  font-weight: 700;
  font-style: italic;
}
/**
 * Colors
 */
/*
 * Base typographical styles and baseline grid.
 */
/**
 * Font sizes
 */
/**
 * Wrapper
 */
/**
 * Breakpoints
 */
/*
 *  Default Settings
 *  ---
 *  Only override the !default variables in '_settings.project.scss' to suit your project needs
 */
/*
 * Base typographical styles and baseline grid.
 */
/**
 * Font family's
 */
/**
 * Font sizes
 */
/*
 * Spacing values are determined based on your project’s global line height (i.e
 * your baseline grid). It is not recommended that you modify these following
 * variables (it can break your vertical rhythm), but if you need to, you can.
 */
/**
 * Wrapper
 */
/*
 * How many times larger/smaller than the default should our spacing unit
 * variants be?
*/
/**
 * Breakpoints
 */
/**
 * Font weights
 */
/*
 *  Settings: Colors
 *  ---
 *  Every color that is being used should be defined here.
 *  Based on : http://erskinedesign.com/blog/friendlier-colour-names-sass-maps/
 *
 *  Usage:
 *      color: palette(color-<color-name>, <tint>);
 *      e.g.: palette(color-base, base); outputs -> #333;
 */
/*
 * Tools
 * Globally used mixins and functions. It’s important not to output any
 * CSS in the first 2 layers.
 */
/*
 *  Tools: Mixins
 *  ---
 *  Global mixins available to the entire project.
 *  Define file-specific mixins inside the file to which they relate.
 */
/**
 * Hide elements in an accessible way
 *
 * Usage: @include visually-hidden();
 */
/**
 * Clear floats
 *
 * Usage: @include clearfix();
 */
/**
 * Center align a block-level element
 */
/*
 *  Tools: Functions
 *  ---
 *  Functions that you can use during the theming process.
 */
/**
 * Convert any px value into its rem equivalent.
 *
 * Usage: rem(number);
 */
/**
 * The palette function works with a base color and a tint.
 * Reads from '_settings.colors.scss'
 *
 * Usage: palette(color-alpha,base)
 */
/*
 * Generic
 * Reset and/or normalize styles, box-sizing definition, etc. This is the
 * first layer which generates actual CSS.
 */
/* ==========================================================================
   Normalize.scss settings
   ========================================================================== */
/**
 * Includes legacy browser support IE6/7
 *
 * Set to false if you want to drop support for IE6 and IE7
 */
/* Base
   ========================================================================== */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 * 3. Corrects text resizing oddly in IE 6/7 when body `font-size` is set using
 *  `em` units.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Prevents modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */
a:active, a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Addresses styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * 1. Remove border when inside `a` element in IE 8/9/10.
 * 2. Improves image quality when scaled in IE 7.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 * Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *  Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 * 4. Improves appearance and consistency in all browsers.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *  and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *  `input` and others.
 * 4. Removes inner spacing in IE 7 without affecting normal text inputs.
 *  Known issue: inner spacing remains in IE 6.
 */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 *  Known issue: excess padding remains in IE 6.
 */
input[type=checkbox],
input[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
 */
input[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  box-sizing: content-box;
  /* 2 */
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 * 3. Corrects text not wrapping in Firefox 3.
 * 4. Corrects alignment displayed oddly in IE 6/7.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/*
 *  Generic: box-sizing
 *  ---
 *  Set a better box model as default
 */
html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

/*
 *  Utilities: Print
 *  ---
 *  Predefined print styles to have a decent default
 */
@media print {
  *,
*:before,
*:after,
*:first-letter,
*:first-line {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster: http://www.sanbeiji.com/archives/953 */
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
a:visited {
    text-decoration: underline;
  }

  a[href]:after {
    content: " (" attr(href) ")";
  }

  abbr[title]:after {
    content: " (" attr(title) ")";
  }

  /*
   * Don't show links that are fragment identifiers,
   * or use the `javascript:` pseudo protocol
   */
  a[href^="#"]:after,
a[href^="javascript:"]:after {
    content: "";
  }

  pre,
blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }

  /*
   * Printing Tables:
   * http://css-discuss.incutio.com/wiki/Printing_Tables
   */
  thead {
    display: table-header-group;
  }

  tr,
img {
    page-break-inside: avoid;
  }

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

  p,
h2,
h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
h3 {
    page-break-after: avoid;
  }
}
/*
 * Elements
 * Styling for bare HTML elements (like H1, A, etc.). These come with default
 * styling from the browser so we can redefine them here.
 */
/*
 *  Elements: page
 *  ---
 *  Simple page-level setup.
 */
/**
 * 1. Ensure the page always fills at least the entire height of the viewport.
 */
* {
  outline: none;
}

html {
  font-size: 62.5%;
  min-height: 100%;
  /* [1] */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
html.wf-active {
  font-family: "Volkart";
}

body {
  font-size: 18px;
  font-family: "Volkart";
  color: #425563;
  font-weight: 400;
  line-height: 1.5;
}

@media screen and (max-width: 768px) {
  main::before {
    content: "";
    width: 100%;
    display: block;
    height: 7rem;
  }
}

iframe {
  width: 1px !important;
  min-width: 100% !important;
  *width: 100% !important;
}

#grnhse_iframe {
  min-height: 500px;
}
@media screen and (max-width: 768px) {
  #grnhse_iframe {
    min-height: 1000px;
  }
}

.container {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}

.mobile-show {
  display: none;
}
@media (max-width: 667px) {
  .mobile-show {
    display: block;
  }
}

.desktop-show {
  display: block;
}
@media (max-width: 667px) {
  .desktop-show {
    display: none;
  }
}

/*
 *  Parapgraphs
 *  ---
 *  Default styles for paragraphs
 */
p {
  line-height: 1.5;
}
p:only-child {
  margin: 0;
}
p:first-child {
  margin-top: 0;
}
p:last-child {
  margin-bottom: 0;
}

/*
 *  Elements: Headings
 *  ---
 *  We have all of our heading font sizes defined here. Passing these pixel
 *  values into our `rfs()` mixin will generate a fluid font-size
 */
.wf-active h1, .wf-active h2, .wf-active h3, .wf-active h4, .wf-active h5, .wf-active h6 {
  font-family: "Volkart";
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  font-weight: 900;
  line-height: 1.2;
  color: #000;
}

h1 {
  font-size: 40px;
  margin: 0 0 1rem;
}
@media screen and (max-width: 768px) {
  h1 {
    font-size: 32px;
  }
}

h2 {
  font-size: 32px;
  margin: 0 0 20px;
}
@media screen and (max-width: 768px) {
  h2 {
    font-size: 28px;
  }
}

h3 {
  font-size: 28px;
  margin: 0 0 15px;
}
@media screen and (max-width: 768px) {
  h3 {
    font-size: 24px;
  }
}

h4 {
  font-size: 24px;
  margin: 0 0 15px;
}
@media screen and (max-width: 768px) {
  h4 {
    font-size: 22px;
  }
}

h5 {
  font-size: 20px;
  margin: 0 0 10px;
}
@media screen and (max-width: 768px) {
  h5 {
    font-size: 18px;
  }
}

h6 {
  font-size: 16px;
  margin: 0 0 10px;
}
@media screen and (max-width: 768px) {
  h6 {
    font-size: 14px;
  }
}

.h-large {
  font-size: 70px;
  font-weight: 300;
}
@media screen and (max-width: 768px) {
  .h-large {
    font-size: 45px;
  }
}

.h-medium {
  font-size: 60px;
  font-weight: 300;
}
@media screen and (max-width: 768px) {
  .h-medium {
    font-size: 35px;
  }
}

.h-small {
  font-size: 50px;
  font-weight: 300;
}
@media screen and (max-width: 768px) {
  .h-small {
    font-size: 25px;
  }
}

.h-border, .page-approach h3 {
  border-bottom: 8px solid #da291c;
  display: inline-block;
  position: relative;
  padding: 0 0 5px;
}
@media screen and (max-width: 667px) {
  .h-border, .page-approach h3 {
    border-bottom: 4px solid #da291c;
  }
}
.h-border::before, .page-approach h3::before {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  bottom: -8px;
  left: -8px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(90deg);
  transition: all 0.25s ease-out;
}
@media screen and (max-width: 667px) {
  .h-border::before, .page-approach h3::before {
    width: 4px;
    height: 4px;
    bottom: -4px;
    left: -4px;
  }
}
.h-border::after, .page-approach h3::after {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  bottom: -8px;
  right: -8px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(-90deg);
  transition: all 0.25s ease-out;
}
@media screen and (max-width: 667px) {
  .h-border::after, .page-approach h3::after {
    width: 4px;
    height: 4px;
    bottom: -4px;
    right: -4px;
  }
}

/*
 *  Images
 *  ---
 *  Default styles for images
 */
img {
  max-width: 100%;
  font-style: italic;
  vertical-align: middle;
  margin: 0 0 2rem;
}
.full-width img {
  width: 100%;
  height: auto;
  display: block;
}

figure {
  margin: 0;
}

figcaption {
  font-size: 0.9em;
  display: block;
  padding: 3px 0;
  font-style: italic;
}

.image-full {
  width: 100%;
  height: 475px;
  background-size: cover;
  background-position: center center;
}
@media screen and (max-width: 1200px) {
  .image-full {
    height: 300px;
  }
}
@media screen and (max-width: 768px) {
  .image-full {
    height: 200px;
  }
}
@media screen and (max-width: 667px) {
  .image-full {
    height: 180px;
  }
}

.full-image img {
  margin: 0;
  height: auto;
}

/*
 *  Link
 *  ---
 *  Default styles for links
 *
 */
a {
  color: #da291c;
  text-decoration: none;
  outline: none;
}
a:focus, a:hover {
  color: #ad2116;
}
a h2:hover, a h3:hover, a h4:hover, a h5:hover, a h6:hover {
  color: #da291c;
}

.links ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.links ul li {
  line-height: 1.5;
  padding: 0 0 0 3rem;
  position: relative;
}
.links ul li::before {
  content: "";
  width: 2rem;
  height: 1.2rem;
  position: absolute;
  left: 0;
  top: 0.8rem;
  background-image: url("../images/icon-listing.png");
  background-size: cover;
}
.links ul li a:hover {
  color: #da291c;
}

.page-approach h3 {
  font-size: 60;
  font-family: "Volkart";
  font-weight: 300;
}

.icon--small {
  width: 1.5rem;
  height: 1.5rem;
}

/*
 * Layouts
 */
.l-columns-wrap {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
@media (max-width: 667px) {
  .l-columns-wrap {
    align-items: flex-start;
  }
}
.reverse .l-columns-wrap {
  flex-direction: row-reverse;
}
.l-columns-v-center {
  align-items: center;
}
.l-columns__item img {
  width: 100%;
  height: auto;
}

.l-columns-5 .l-columns__item {
  width: calc(92%/5);
}
@media (max-width: 768px) {
  .l-columns-5 .l-columns__item {
    width: calc(96%/3);
  }
}
@media (max-width: 550px) {
  .l-columns-5 .l-columns__item {
    width: calc(98%/2);
  }
}
@media (max-width: 375px) {
  .l-columns-5 .l-columns__item {
    width: 100%;
  }
}
.l-columns-5 .l-columns__item:not(:nth-child(5n)) {
  margin-right: 2%;
}
@media (max-width: 768px) {
  .l-columns-5 .l-columns__item:not(:nth-child(5n)) {
    margin-right: 0;
  }
}
@media (max-width: 768px) {
  .l-columns-5 .l-columns__item:not(:nth-child(3n)) {
    margin-right: 2%;
  }
}
@media (max-width: 550px) {
  .l-columns-5 .l-columns__item:not(:nth-child(3n)) {
    margin-right: 0;
  }
}
@media (max-width: 550px) {
  .l-columns-5 .l-columns__item:not(:nth-child(2n)) {
    margin-right: 2%;
  }
}
@media (max-width: 375px) {
  .l-columns-5 .l-columns__item:not(:nth-child(2n)) {
    margin-right: 0;
  }
}

.l-columns-4 .l-columns__item {
  width: calc(94%/4);
}
@media (max-width: 1024px) {
  .l-columns-4 .l-columns__item {
    width: calc(96%/3);
  }
}
@media (max-width: 550px) {
  .l-columns-4 .l-columns__item {
    width: calc(98%/2);
  }
}
@media (max-width: 375px) {
  .l-columns-4 .l-columns__item {
    width: 100%;
  }
}
.l-columns-4 .l-columns__item:not(:nth-child(4n)) {
  margin-right: 2%;
}
@media (max-width: 1024px) {
  .l-columns-4 .l-columns__item:not(:nth-child(4n)) {
    margin-right: 0;
  }
}
@media (max-width: 1024px) {
  .l-columns-4 .l-columns__item:not(:nth-child(3n)) {
    margin-right: 2%;
  }
}
@media (max-width: 550px) {
  .l-columns-4 .l-columns__item:not(:nth-child(3n)) {
    margin-right: 0;
  }
}
@media (max-width: 550px) {
  .l-columns-4 .l-columns__item:not(:nth-child(2n)) {
    margin-right: 2%;
  }
}
@media (max-width: 375px) {
  .l-columns-4 .l-columns__item:not(:nth-child(2n)) {
    margin-right: 0;
  }
}

.l-columns-3 .l-columns__item {
  width: calc(96%/3);
}
@media (max-width: 550px) {
  .l-columns-3 .l-columns__item {
    width: calc(98%/2);
  }
}
@media (max-width: 375px) {
  .l-columns-3 .l-columns__item {
    width: 100%;
  }
}
.l-columns-3 .l-columns__item:not(:nth-child(3n)) {
  margin-right: 2%;
}
@media (max-width: 550px) {
  .l-columns-3 .l-columns__item:not(:nth-child(3n)) {
    margin-right: 0;
  }
}
@media (max-width: 550px) {
  .l-columns-3 .l-columns__item:not(:nth-child(2n)) {
    margin-right: 2%;
  }
}
@media (max-width: 375px) {
  .l-columns-3 .l-columns__item:not(:nth-child(2n)) {
    margin-right: 0;
  }
}

.l-columns-2 .l-columns__item {
  width: calc(98%/2);
}
@media (max-width: 375px) {
  .l-columns-2 .l-columns__item {
    width: 100%;
  }
}
.l-columns-2 .l-columns__item:not(:nth-child(2n)) {
  margin-right: 2%;
}
@media (max-width: 375px) {
  .l-columns-2 .l-columns__item:not(:nth-child(2n)) {
    margin-right: 0;
  }
}

.l-columns-1-2 .l-columns__item:first-child {
  width: 31.6666666667%;
}
.l-columns-1-2 .l-columns__item:last-child {
  width: 63.3333333333%;
}
@media (max-width: 768px) {
  .l-columns-1-2 .l-columns__item:first-child, .l-columns-1-2 .l-columns__item:last-child {
    width: 47.5%;
  }
}
@media (max-width: 667px) {
  .l-columns-1-2 .l-columns__item:first-child {
    width: 100%;
    margin-bottom: 2rem;
  }
  .l-columns-1-2 .l-columns__item:last-child {
    width: 100%;
  }
}
.l-columns-1-2 .l-columns__item:not(:last-child) {
  margin-right: 5%;
}
@media (max-width: 550px) {
  .l-columns-1-2 .l-columns__item:not(:last-child) {
    margin-right: 0;
  }
}

.page-content {
  padding: 6rem 0;
  position: relative;
}
@media screen and (max-width: 768px) {
  .page-content {
    padding: 2rem 0;
  }
}
.page-content.small {
  padding: 2rem 0 4rem;
}
.page-content.border {
  border-top: 1px solid #f1f3f4;
}
.page-content__title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 80%;
  margin: 0 auto;
}
.page-content__title h1, .page-content__title h2, .page-content__title h3 {
  margin: 0;
  padding: 0.5rem 0 0;
}
.page-content__cta {
  text-align: center;
  margin: 2rem 0 0;
}
.page-content__text {
  width: 80%;
  margin: 0 auto;
}
.page-content--download {
  margin: 4rem 0 0;
  display: block;
}
.page-content ul, .page-content ol {
  margin: 1rem;
  padding: 0;
  list-style: none !important;
  list-style-type: none !important;
}
.page-content ul li, .page-content ol li {
  line-height: 1.5;
  padding: 0 0 1rem 3rem;
  position: relative;
}
.page-content ul li::before, .page-content ol li::before {
  content: "";
  width: 2rem;
  height: 0.5rem;
  position: absolute;
  left: 0;
  top: 0.8rem;
  background-image: url("../images/list-item.svg");
  background-size: cover;
}

.page-content--small .o-container {
  max-width: 960px;
}

.page-content ul li.c-glossary__item::before, .page-content ol li.c-glossary__item::before {
  content: none;
}

.background-row-image {
  background-size: cover;
  background-repeat: no-repeat;
  border-top: 1px solid #dcdcdc;
  background-position: center;
}
@media screen and (max-width: 480px) {
  .background-row-image {
    background: none !important;
  }
}
.background-row-image .top-content {
  margin-bottom: 100px;
}
.background-row-image .block-item {
  min-height: 235px;
}
.background-row-image .block-item .block-header {
  min-height: 60px;
  margin-bottom: 25px;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  border: 0;
  box-shadow: 0 0.5rem #da291c;
  position: relative;
  transition: box-shadow 0.25s ease-out, transform 0.25s ease-out;
}
.background-row-image .block-item .block-header:hover, .background-row-image .block-item .block-header:active {
  box-shadow: 0 0.5rem #da291c;
}
.background-row-image .block-item .block-header:focus {
  outline: 0;
}
.background-row-image .block-item .block-header::after, .background-row-image .block-item .block-header::before {
  content: "";
  display: inline-block;
  height: 0.5rem;
  position: absolute;
  transition: right 0.25s ease-out, bottom 0.25s ease-out, height 0.25s ease-out, width 0.25s ease-out;
  width: 0.5rem;
}
.background-row-image .block-item .block-header::after {
  background-image: linear-gradient(45deg, transparent 50%, #da291c 50%);
  bottom: -0.5rem;
  left: -0.5rem;
}
.background-row-image .block-item .block-header::before {
  background-image: linear-gradient(225deg, transparent 50%, #da291c 50%);
  right: -0.5rem;
  bottom: -0.5rem;
}
.background-row-image .block-item .block-header:active::after, .background-row-image .block-item .block-header:hover::after {
  background-image: linear-gradient(45deg, transparent 50%, #da291c 50%);
}
.background-row-image .block-item .block-header:active::before, .background-row-image .block-item .block-header:hover::before {
  background-image: linear-gradient(225deg, transparent 50%, #da291c 50%);
}

.row-gray .white-box-outer-wrapper {
  padding: 30px 15px;
  background-color: #fff;
  min-height: 250px;
  color: #000;
  margin-bottom: 30px;
}
.row-gray .white-box-outer-wrapper .white-box-inner-wrapper img.box-icon-img {
  margin-bottom: 70px;
  height: 80px;
  width: 80px;
}
.row-gray .white-box-outer-wrapper .white-box-inner-wrapper img.seperator-img {
  width: 163px;
  height: 6px;
  clear: both;
  display: block;
  margin-top: 10px;
}
.row-gray .white-box-outer-wrapper .white-box-inner-wrapper .content .white-box-title {
  font-size: 24px;
  font-weight: bold;
  line-height: 24px;
  color: #000;
  font-family: "Volkart";
  font-weight: 800;
}
.row-gray .white-box-outer-wrapper:hover .content .white-box-title {
  color: #da291c;
}

.header-row-image {
  background-size: cover;
  background-repeat: no-repeat;
  background-color: #dde1e4;
}
.header-row-image .header-wrapper {
  padding-top: 20px;
  padding-bottom: 50px;
}
.header-row-image .header-wrapper .header-breadcrumbs {
  /*margin-bottom: 50px;*/
}
@media screen and (max-width: 1000px) {
  .header-row-image .header-wrapper .header-breadcrumbs {
    margin-bottom: 15px;
  }
}
.header-row-image .header-wrapper .header-content h1 {
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .header-row-image .header-wrapper .header-content h1 {
    font-size: 40px;
    line-height: 40px;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 768px) {
  .header-row-image .header-wrapper .header-content p span {
    font-size: 18px !important;
  }
}
.header-row-image .header-wrapper .header-image {
  text-align: right;
}
@media screen and (max-width: 768px) {
  .header-row-image .header-wrapper .header-image {
    text-align: left;
  }
  .header-row-image .header-wrapper .header-image img {
    width: 30%;
  }
}
.header-row-image .header-wrapper .header-icon {
  text-align: right;
  font-size: 160px;
}

.entry-date {
  font-size: 17px;
}

/* Full WD Image Header */
#fullwd-image-banner {
  width: 100%;
  background-color: #fff;
  height: 35vw;
  max-height: 570px;
  position: relative;
  overflow: hidden;
}
#fullwd-image-banner img {
  width: 100%;
}
#fullwd-image-banner .header-wrapper {
  position: absolute;
  top: 0;
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 1070px) {
  #fullwd-image-banner .header-wrapper {
    top: 20px;
  }
}
@media screen and (max-width: 980px) {
  #fullwd-image-banner .header-wrapper {
    top: 40px;
  }
}
@media screen and (max-width: 768px) {
  #fullwd-image-banner .header-wrapper {
    display: none;
  }
}
@media screen and (max-width: 550px) {
  #fullwd-image-banner .header-wrapper {
    padding-bottom: 15px;
  }
}
#fullwd-image-banner .background-image {
  width: 100%;
  position: relative;
  height: 35vw;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center left;
}
#fullwd-image-banner .insight-detail-gradient {
  height: inherit;
}
@media screen and (max-width: 1150px) {
  #fullwd-image-banner .header-breadcrumbs {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 1150px) {
  #fullwd-image-banner .header-breadcrumbs p {
    font-size: 0.9rem;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 1150px) {
  #fullwd-image-banner .header-content h1 {
    font-size: 45px;
    line-height: 45px;
  }
}
@media screen and (max-width: 876px) {
  #fullwd-image-banner .header-content h1 {
    font-size: 30px;
    line-height: 30px;
  }
}
@media screen and (max-width: 768px) {
  #fullwd-image-banner .header-content {
    display: none;
  }
}
@media screen and (max-width: 1350px) {
  #fullwd-image-banner .header-content h2 {
    font-size: 35px;
    line-height: 35px;
  }
}
@media screen and (max-width: 1170px) {
  #fullwd-image-banner .header-content h2 {
    font-size: 30px;
    line-height: 30px;
  }
}
@media screen and (max-width: 990px) {
  #fullwd-image-banner .header-content h2 {
    font-size: 25px;
    line-height: 25px;
  }
}

@media screen and (max-width: 1070px) {
  .single-post #fullwd-image-banner .header-wrapper {
    top: 20px;
  }
}
@media screen and (max-width: 980px) {
  .single-post #fullwd-image-banner .header-wrapper {
    top: 0;
  }
}
@media screen and (max-width: 768px) {
  .single-post #fullwd-image-banner .header-wrapper {
    display: none;
  }
}
@media screen and (max-width: 550px) {
  .single-post #fullwd-image-banner .header-wrapper {
    padding-bottom: 15px;
  }
}
@media screen and (max-width: 995px) {
  .single-post #fullwd-image-banner .header-wrapper .header-content p {
    line-height: 13px;
  }
}
@media screen and (max-width: 995px) {
  .single-post #fullwd-image-banner .header-wrapper .header-content p span {
    font-size: 16px !important;
  }
}
@media screen and (max-width: 890px) {
  .single-post #fullwd-image-banner .header-wrapper .header-content p span {
    font-size: 16px !important;
  }
}

#red-row p, #red-row span, #red-row ul, #red-row li, #red-row h1, #red-row h2, #red-row h3, #red-row h4, #red-row h5, #red-row h6 {
  color: #fff;
}

/*
 * Objects
 * Class-based selectors which define undecorated design patterns, for example
 * media object known from OOCSS
 */
/*
 *  Object: Container
 *  ---
 *  Class to wrap content
 */
.o-container,
.container {
  max-width: 1140px;
  width: 100%;
  line-height: 1;
  margin-right: auto;
  margin-left: auto;
  padding-left: 2rem;
  padding-right: 2rem;
}

.o-container--small {
  max-width: 960px;
  margin: 0 auto;
  padding-left: 2rem;
  padding-right: 2rem;
}
@media screen and (max-width: 768px) {
  .o-container--small {
    padding: 0;
  }
}

.browserupgrade {
  padding: 1rem 0;
  background-color: #000;
  color: #bbc3c9;
  text-align: center;
  display: none;
}
.browserupgrade a {
  color: #bbc3c9;
  text-decoration: underline;
}

html[data-useragent*="MSIE 10.0"] .browserupgrade {
  display: block;
}

/**
 *  Default styling for Gravity Forms
 */
/**
 * GF base styling
 */
.gform_wrapper {
  text-align: left;
  font-size: 1.6rem;
}
.gform_wrapper ul {
  margin-left: 0;
}
.gform_wrapper ul li {
  list-style-type: none;
  margin: 10px 0 0;
}
.gform_wrapper .gform_title {
  font-size: 4rem;
  margin: 0;
  padding: 0;
}
.gform_wrapper .gsection_title {
  font-size: 3rem;
  margin: 4rem 0 0;
  padding: 0;
}
.gform_wrapper .gform_fields {
  padding: 0;
}
.gform_wrapper .gfield_label {
  clear: both;
  display: none;
  font-weight: 700;
  margin: 1rem 0;
  font-size: 1.4rem;
  height: 1px;
}
.gform_wrapper .gfield_description {
  font-size: 1.4rem;
  display: block;
  margin: 1rem 0 0;
  font-style: italic;
}
.gform_wrapper .gfield_required {
  color: inherit;
  padding: 0 0.2rem;
}
.gform_wrapper .field_description_above .gfield_description {
  margin: 0 0 0.5rem;
}
.gform_wrapper .ginput_container .small {
  width: 25%;
}
.gform_wrapper .ginput_container .medium {
  width: 50%;
}
.gform_wrapper .ginput_container .large {
  width: 100%;
}
.gform_wrapper .gform_hidden {
  padding: 0;
  margin: 0;
}
.gform_wrapper .gform_button,
.gform_wrapper .gform_previous_button,
.gform_wrapper .gform_next_button {
  padding: 12px 18px;
  font-size: 18px;
  font-weight: 700;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  border: 0;
  border-radius: 0;
  color: #da291c !important;
  box-shadow: 8px 8px #da291c;
  position: relative;
  transition: all 0.25s ease-out;
  display: inline-block;
  cursor: pointer;
  background-color: #fff !important;
  margin: 2rem 0 0;
}
@media screen and (max-width: 768px) {
  .gform_wrapper .gform_button,
.gform_wrapper .gform_previous_button,
.gform_wrapper .gform_next_button {
    margin: 0;
  }
}
.gform_wrapper .gform_button:hover, .gform_wrapper .gform_button:active .gform_wrapper .gform_button:focus,
.gform_wrapper .gform_previous_button:hover,
.gform_wrapper .gform_button:active .gform_wrapper .gform_previous_button:focus,
.gform_wrapper .gform_next_button:hover,
.gform_wrapper .gform_button:active .gform_wrapper .gform_next_button:focus,
.gform_wrapper .gform_previous_button:active .gform_wrapper .gform_button:focus,
.gform_wrapper .gform_previous_button:active .gform_wrapper .gform_previous_button:focus,
.gform_wrapper .gform_previous_button:active .gform_wrapper .gform_next_button:focus,
.gform_wrapper .gform_next_button:active .gform_wrapper .gform_button:focus,
.gform_wrapper .gform_next_button:active .gform_wrapper .gform_previous_button:focus,
.gform_wrapper .gform_next_button:active .gform_wrapper .gform_next_button:focus {
  box-shadow: 1px 1px #da291c;
  transform: translate(4px, 4px);
  background-color: #fff !important;
  color: #da291c !important;
}
.gform_wrapper .gform_button::before,
.gform_wrapper .gform_previous_button::before,
.gform_wrapper .gform_next_button::before {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  bottom: -8px;
  left: 0;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(90deg);
  transition: all 0.25s ease-out;
}
.gform_wrapper .gform_button::after,
.gform_wrapper .gform_previous_button::after,
.gform_wrapper .gform_next_button::after {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  top: 0;
  right: -8px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(-90deg);
  transition: all 0.25s ease-out;
}
.gform_wrapper .gform_button:hover::before,
.gform_wrapper .gform_previous_button:hover::before,
.gform_wrapper .gform_next_button:hover::before {
  width: 1px;
  height: 1px;
  bottom: -1px;
}
.gform_wrapper .gform_button:hover::after,
.gform_wrapper .gform_previous_button:hover::after,
.gform_wrapper .gform_next_button:hover::after {
  width: 1px;
  height: 1px;
  right: -1px;
}
.gform_wrapper .gform_button:focus,
.gform_wrapper .gform_previous_button:focus,
.gform_wrapper .gform_next_button:focus {
  outline: 0;
}
.gform_wrapper .gform_footer {
  margin: 1rem 0 0;
}
.gform_wrapper .hidden_sub_label {
  display: none;
}
.gform_wrapper .validation_error {
  margin: 0 0 1rem;
  display: block;
}

/*
 * GF Styling Radio
 */
.gform_wrapper .gfield_checkbox {
  margin: 0;
  padding: 0;
}
.gform_wrapper .gfield_checkbox li {
  display: flex;
  flex-wrap: wrap;
  line-height: 1.4;
  margin: 0 0 10px !important;
  width: 100% !important;
}
.gform_wrapper .gfield_checkbox li label {
  margin: 0;
  padding: 0 0 0 30px;
  font-weight: 400;
  position: relative;
}
.gform_wrapper .gfield_checkbox li label:before, .gform_wrapper .gfield_checkbox li label:after {
  position: absolute;
  left: 0;
  top: 0;
}
.gform_wrapper .gfield_checkbox li label:before {
  display: block;
  content: "";
  width: 20px;
  height: 20px;
  border: 1px solid #425563;
}
.newsletter .gform_wrapper .gfield_checkbox li label:before, .c-red-block .gform_wrapper .gfield_checkbox li label:before {
  border-color: white;
}
.gform_wrapper .gfield_checkbox li label:after {
  content: "";
  font-family: FontAwesome;
  left: 2px;
  top: -2px;
  z-index: 100;
  display: none;
}
.gform_wrapper .gfield_checkbox li input {
  display: none;
}
.gform_wrapper .gfield_checkbox li input:checked + label:after {
  display: block;
}
.gform_wrapper .gfield_radio {
  margin: 0;
  padding: 0;
}
.gform_wrapper .gfield_radio li {
  align-items: center;
  display: flex;
  line-height: 1;
  margin: 0 0 10px;
}
.gform_wrapper .gfield_radio li label {
  margin: 0;
  padding: 0;
  font-weight: 400;
}
.gform_wrapper .gfield_radio li input {
  margin: 0 10px 0 0;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #fff;
  border: 1px solid #bbc3c9;
  -webkit-appearance: none;
  outline: none;
}
.gform_wrapper .gfield_radio li input:checked {
  background-color: #da291c;
}

/**
 * GF Styling Complex
 */
.gform_wrapper .ginput_complex {
  display: flex;
}
.gform_wrapper .ginput_complex.ginput_container_address {
  flex-wrap: wrap;
}
.gform_wrapper .ginput_complex label {
  font-weight: 400;
  margin: 1rem 0;
  font-style: italic;
  font-size: 1.4rem;
}
.gform_wrapper .ginput_complex span {
  flex-grow: 1;
  flex-shrink: 1;
  margin-right: 1.6949152542%;
}
.gform_wrapper .ginput_complex span:last-of-type {
  margin-right: 0;
}
.gform_wrapper .ginput_complex .name_prefix_select {
  flex-grow: 0;
  flex-shrink: 0;
}
.gform_wrapper .ginput_complex .ginput_full {
  flex-shrink: 0;
  margin-right: 0;
  width: 100%;
}
.gform_wrapper .ginput_complex .ginput_left {
  flex-shrink: 0;
}
.gform_wrapper .ginput_complex .ginput_right {
  flex-shrink: 0;
}

/**
 * GF Styling Date
 */
.gform_wrapper .datepicker_with_icon {
  margin-right: 10px;
}
.gform_wrapper .clear-multi {
  display: flex;
}
.gform_wrapper .clear-multi div {
  flex-grow: 1;
  margin-right: 1.6949152542%;
}
.gform_wrapper .clear-multi div:last-child {
  margin-right: 0;
}

/**
 * GF Styling Datepicker
 */
.ui-datepicker {
  font-size: 1.4rem;
  width: 320px;
  height: auto;
  z-index: 9999;
  border: 1px solid #bbc3c9;
  background-color: #fff;
  border-radius: 0.4rem;
  margin: 1rem 0 0;
}
.ui-datepicker a {
  text-decoration: none;
}
.ui-datepicker thead {
  background-color: #da291c;
}
.ui-datepicker th {
  color: #fff;
  padding: 1rem 0;
  text-align: center;
  text-transform: uppercase;
}
.ui-datepicker tbody {
  padding: 1rem 0;
}
.ui-datepicker tbody td {
  padding: 0.5rem 0;
  text-align: center;
}
.ui-datepicker tbody tr:last-child {
  padding: 0 0 2rem;
}
.ui-datepicker td a,
.ui-datepicker td span {
  color: #bbc3c9;
  display: inline-block;
  font-weight: 400;
  height: 3rem;
  line-height: 3rem;
  text-align: center;
  width: 3rem;
}

.ui-datepicker-header {
  background-color: #da291c;
  color: #e0e0e0;
  font-weight: bold;
  line-height: 30px;
  min-height: 30px;
}

.ui-datepicker-title {
  text-align: center;
  height: 5rem;
}
.ui-datepicker-title select {
  background-color: transparent;
  margin-top: 2.5%;
  padding: 0;
  width: 25%;
  color: #fff;
  border: none;
}
.ui-datepicker-title select:focus {
  border: none;
}

.ui-datepicker-prev,
.ui-datepicker-next {
  cursor: pointer;
  display: inline-block;
  height: 5rem;
  text-align: center;
  width: 5rem;
  position: relative;
}

.ui-datepicker-prev {
  float: left;
}
.ui-datepicker-prev span {
  display: none;
}
.ui-datepicker-prev::after {
  content: "◀";
  color: #fff;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: 5rem;
  height: 5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.ui-datepicker-next {
  float: right;
}
.ui-datepicker-next span {
  display: none;
}
.ui-datepicker-next::after {
  content: "▶";
  color: #fff;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: 5rem;
  height: 5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.ui-datepicker-calendar {
  margin-bottom: 0;
  width: 100%;
}
.ui-datepicker-calendar .ui-state-hover {
  background: #fff;
}
.ui-datepicker-calendar .ui-state-active {
  color: #da291c;
  position: relative;
}
.ui-datepicker-calendar td:first-child .ui-state-active {
  margin-left: 0;
  width: 29px;
}
.ui-datepicker-calendar td:last-child .ui-state-active {
  margin-right: 0;
  width: 29px;
}
.ui-datepicker-calendar tr:last-child .ui-state-active {
  height: 29px;
  margin-bottom: 0;
}

.ui-datepicker-unselectable .ui-state-default {
  background: #b25055;
  color: #fff;
}
.ui-datepicker-unselectable.ui-state-disabled {
  background-color: #fff;
}

/**
 * GF Styling Errors
 */
.gform_wrapper .gfield_error > label {
  color: #b25055;
}
.gform_wrapper .gfield_error input[type=color],
.gform_wrapper .gfield_error input[type=date],
.gform_wrapper .gfield_error input[type=datetime],
.gform_wrapper .gfield_error input[type=datetime-local],
.gform_wrapper .gfield_error input[type=email],
.gform_wrapper .gfield_error input[type=month],
.gform_wrapper .gfield_error input[type=number],
.gform_wrapper .gfield_error input[type=password],
.gform_wrapper .gfield_error input[type=search],
.gform_wrapper .gfield_error input[type=tel],
.gform_wrapper .gfield_error input[type=text],
.gform_wrapper .gfield_error input[type=time],
.gform_wrapper .gfield_error input[type=url],
.gform_wrapper .gfield_error input[type=week],
.gform_wrapper .gfield_error input,
.gform_wrapper .gfield_error select,
.gform_wrapper .gfield_error textarea {
  border-color: #dc2521;
}
.gform_wrapper .gfield_error input[type=color]::-webkit-input-placeholder, .gform_wrapper .gfield_error input[type=date]::-webkit-input-placeholder, .gform_wrapper .gfield_error input[type=datetime]::-webkit-input-placeholder, .gform_wrapper .gfield_error input[type=datetime-local]::-webkit-input-placeholder, .gform_wrapper .gfield_error input[type=email]::-webkit-input-placeholder, .gform_wrapper .gfield_error input[type=month]::-webkit-input-placeholder, .gform_wrapper .gfield_error input[type=number]::-webkit-input-placeholder, .gform_wrapper .gfield_error input[type=password]::-webkit-input-placeholder, .gform_wrapper .gfield_error input[type=search]::-webkit-input-placeholder, .gform_wrapper .gfield_error input[type=tel]::-webkit-input-placeholder, .gform_wrapper .gfield_error input[type=text]::-webkit-input-placeholder, .gform_wrapper .gfield_error input[type=time]::-webkit-input-placeholder, .gform_wrapper .gfield_error input[type=url]::-webkit-input-placeholder, .gform_wrapper .gfield_error input[type=week]::-webkit-input-placeholder, .gform_wrapper .gfield_error input::-webkit-input-placeholder, .gform_wrapper .gfield_error select::-webkit-input-placeholder, .gform_wrapper .gfield_error textarea::-webkit-input-placeholder {
  color: #dc2521;
  opacity: 0.3;
}
.gform_wrapper .gfield_error input[type=color]::-moz-placeholder, .gform_wrapper .gfield_error input[type=date]::-moz-placeholder, .gform_wrapper .gfield_error input[type=datetime]::-moz-placeholder, .gform_wrapper .gfield_error input[type=datetime-local]::-moz-placeholder, .gform_wrapper .gfield_error input[type=email]::-moz-placeholder, .gform_wrapper .gfield_error input[type=month]::-moz-placeholder, .gform_wrapper .gfield_error input[type=number]::-moz-placeholder, .gform_wrapper .gfield_error input[type=password]::-moz-placeholder, .gform_wrapper .gfield_error input[type=search]::-moz-placeholder, .gform_wrapper .gfield_error input[type=tel]::-moz-placeholder, .gform_wrapper .gfield_error input[type=text]::-moz-placeholder, .gform_wrapper .gfield_error input[type=time]::-moz-placeholder, .gform_wrapper .gfield_error input[type=url]::-moz-placeholder, .gform_wrapper .gfield_error input[type=week]::-moz-placeholder, .gform_wrapper .gfield_error input::-moz-placeholder, .gform_wrapper .gfield_error select::-moz-placeholder, .gform_wrapper .gfield_error textarea::-moz-placeholder {
  color: #dc2521;
  opacity: 0.3;
}
.gform_wrapper .gfield_error input[type=color]:-ms-input-placeholder, .gform_wrapper .gfield_error input[type=date]:-ms-input-placeholder, .gform_wrapper .gfield_error input[type=datetime]:-ms-input-placeholder, .gform_wrapper .gfield_error input[type=datetime-local]:-ms-input-placeholder, .gform_wrapper .gfield_error input[type=email]:-ms-input-placeholder, .gform_wrapper .gfield_error input[type=month]:-ms-input-placeholder, .gform_wrapper .gfield_error input[type=number]:-ms-input-placeholder, .gform_wrapper .gfield_error input[type=password]:-ms-input-placeholder, .gform_wrapper .gfield_error input[type=search]:-ms-input-placeholder, .gform_wrapper .gfield_error input[type=tel]:-ms-input-placeholder, .gform_wrapper .gfield_error input[type=text]:-ms-input-placeholder, .gform_wrapper .gfield_error input[type=time]:-ms-input-placeholder, .gform_wrapper .gfield_error input[type=url]:-ms-input-placeholder, .gform_wrapper .gfield_error input[type=week]:-ms-input-placeholder, .gform_wrapper .gfield_error input:-ms-input-placeholder, .gform_wrapper .gfield_error select:-ms-input-placeholder, .gform_wrapper .gfield_error textarea:-ms-input-placeholder {
  color: #dc2521;
  opacity: 0.3;
}
.gform_wrapper .gfield_error input[type=color]::-ms-input-placeholder, .gform_wrapper .gfield_error input[type=date]::-ms-input-placeholder, .gform_wrapper .gfield_error input[type=datetime]::-ms-input-placeholder, .gform_wrapper .gfield_error input[type=datetime-local]::-ms-input-placeholder, .gform_wrapper .gfield_error input[type=email]::-ms-input-placeholder, .gform_wrapper .gfield_error input[type=month]::-ms-input-placeholder, .gform_wrapper .gfield_error input[type=number]::-ms-input-placeholder, .gform_wrapper .gfield_error input[type=password]::-ms-input-placeholder, .gform_wrapper .gfield_error input[type=search]::-ms-input-placeholder, .gform_wrapper .gfield_error input[type=tel]::-ms-input-placeholder, .gform_wrapper .gfield_error input[type=text]::-ms-input-placeholder, .gform_wrapper .gfield_error input[type=time]::-ms-input-placeholder, .gform_wrapper .gfield_error input[type=url]::-ms-input-placeholder, .gform_wrapper .gfield_error input[type=week]::-ms-input-placeholder, .gform_wrapper .gfield_error input::-ms-input-placeholder, .gform_wrapper .gfield_error select::-ms-input-placeholder, .gform_wrapper .gfield_error textarea::-ms-input-placeholder {
  color: #dc2521;
  opacity: 0.3;
}
.gform_wrapper .gfield_error input[type=color]::placeholder,
.gform_wrapper .gfield_error input[type=date]::placeholder,
.gform_wrapper .gfield_error input[type=datetime]::placeholder,
.gform_wrapper .gfield_error input[type=datetime-local]::placeholder,
.gform_wrapper .gfield_error input[type=email]::placeholder,
.gform_wrapper .gfield_error input[type=month]::placeholder,
.gform_wrapper .gfield_error input[type=number]::placeholder,
.gform_wrapper .gfield_error input[type=password]::placeholder,
.gform_wrapper .gfield_error input[type=search]::placeholder,
.gform_wrapper .gfield_error input[type=tel]::placeholder,
.gform_wrapper .gfield_error input[type=text]::placeholder,
.gform_wrapper .gfield_error input[type=time]::placeholder,
.gform_wrapper .gfield_error input[type=url]::placeholder,
.gform_wrapper .gfield_error input[type=week]::placeholder,
.gform_wrapper .gfield_error input::placeholder,
.gform_wrapper .gfield_error select::placeholder,
.gform_wrapper .gfield_error textarea::placeholder {
  color: #dc2521;
  opacity: 0.3;
}
.gform_wrapper .validation_message {
  font-style: normal;
  color: #b25055;
}

/**
 * GF Styling Hidden
 */
.gform_wrapper .hidden_label .gfield_label {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute;
  width: 1px;
}
.gform_wrapper .gform_validation_container {
  display: none;
  left: -9000px;
  position: absolute;
}

/**
 * GF Styling Pricing
 */
.gform_wrapper .gfield_creditcard_warning {
  background: #fff;
  border-left: 5px solid #dc2521;
  padding: 15px 15px 10px;
}
.gform_wrapper .gfield_creditcard_warning .gfield_creditcard_warning_message {
  color: #dc2521;
}
.gform_wrapper .ginput_container_creditcard {
  flex-wrap: wrap;
}
.gform_wrapper .ginput_container_creditcard .ginput_full {
  margin-top: 2rem;
}
.gform_wrapper .gform_card_icon_container {
  margin-bottom: 2rem;
}
.gform_wrapper .gform_card_icon,
.gform_wrapper .ginput_card_security_code_icon {
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  height: auto;
  margin-right: 10px;
  text-indent: -100%;
  width: 52px;
}
.gform_wrapper .gform_card_icon_amex {
  background-image: url("images/cards/amex.svg");
}
.gform_wrapper .gform_card_icon_discover {
  background-image: url("images/cards/discover.svg");
}
.gform_wrapper .gform_card_icon_mastercard {
  background-image: url("images/cards/mastercard.svg");
}
.gform_wrapper .gform_card_icon_visa {
  background-image: url("images/cards/visa.svg");
}
.gform_wrapper .gform_card_icon_jcb {
  background-image: url("images/cards/jcb.svg");
}
.gform_wrapper .gform_card_icon_maestro {
  background-image: url("images/cards/maestro.svg");
}
.gform_wrapper .ginput_card_security_code_icon {
  background-image: url("images/cards/security-code.svg");
}
.gform_wrapper .ginput_card_expiration_container select {
  flex-shrink: 0;
}
.gform_wrapper .ginput_complex .ginput_cardinfo_left {
  flex-shrink: 0;
}
.gform_wrapper .ginput_complex .ginput_cardinfo_right {
  flex-shrink: 0;
}
.gform_wrapper .gfield_price .ginput_container {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
}
.gform_wrapper .gfield_price .ginput_container input {
  flex-shrink: 1;
  width: auto;
}
.gform_wrapper .gfield_price .ginput_container span {
  margin-right: 1.6949152542%;
}
.gform_wrapper .ginput_product_price {
  color: #da291c;
}

/**
 * GF Styling Progress
 */
.gform_wrapper .gf_progressbar_wrapper .gf_progressbar_title {
  font-size: 2rem;
  font-weight: normal;
}
.gform_wrapper .gf_progressbar {
  background: #bbc3c9;
  height: 2px;
  line-height: 2px;
  overflow: hidden;
}
.gform_wrapper .gf_progressbar_percentage {
  font-size: #da291c;
  height: 2px;
  text-align: right;
}
.gform_wrapper .gf_progressbar_percentage span {
  opacity: 0;
  display: none;
}
.gform_wrapper .gf_progressbar_percentage.percentbar_0 span {
  color: #000;
  text-shadow: none;
}
.gform_wrapper .percentbar_blue {
  background-color: #da291c;
  color: #fff;
}
.gform_wrapper .percentbar_gray {
  background-color: #da291c;
  color: #fff;
}
.gform_wrapper .percentbar_green {
  background-color: #da291c;
  color: #fff;
}
.gform_wrapper .percentbar_orange {
  background-color: #da291c;
  color: #fff;
}
.gform_wrapper .percentbar_red {
  background-color: #da291c;
  color: #fff;
}
.gform_wrapper .gf_step span {
  vertical-align: top;
}
.gform_wrapper .gf_step_active {
  opacity: 1;
}
.gform_wrapper .gf_step_number {
  font-size: 2.8rem;
}
/**
 * GF Styling Section
 */
.gform_wrapper .gfield_html,
.gform_wrapper .gsection {
  border-bottom: 1px solid #bbc3c9;
  margin: 0 0 1rem;
  padding: 0 0 1rem;
}
.gform_wrapper .gfield_html {
  border-bottom: 0 none;
}

/**
 * GF Styling Select
 */
.gform_wrapper .ginput_container_multiselect select {
  background: #fff;
  padding: 0;
  min-height: 10rem;
}
.gform_wrapper .ginput_container_multiselect select option {
  padding: 1rem;
}

/**
* GF Styling Tables
*/
.gform_wrapper table {
  border: 0 none;
  margin: 0;
}
.gform_wrapper table td {
  border: 0 none;
  padding: 0;
}
.gform_wrapper tbody {
  border: 0 none;
}
.gform_wrapper .gfield_list_icons {
  padding-left: 10px;
}

/**
* GF Styling Textarea
*/
.gform_wrapper .ginput_container textarea {
  resize: none;
}
.gform_wrapper .ginput_container textarea.small, .gform_wrapper .ginput_container textarea.medium {
  width: 100%;
}
.gform_wrapper .ginput_container textarea.small {
  height: 5em;
}
.gform_wrapper .ginput_container textarea.medium {
  height: 9.375em;
}
.gform_wrapper .ginput_container textarea.large {
  height: 15.625em;
}

/**
* GF Styling Uploads
*/
.gform_wrapper .gform_drop_area {
  width: 25rem;
  border: 2px dashed #bbc3c9;
  color: #bbc3c9;
  margin: 0 0 1rem;
  padding: 3rem;
  text-align: center;
}
.gform_wrapper .gform_drop_area span {
  display: block;
  padding: 0 0 1rem;
}
.gform_wrapper .gform_drop_area input {
  background-color: #da291c;
  color: #fff;
  border: none;
  padding: 1rem;
  outline: none;
  display: inline-block;
}

.ginput_container_fileupload {
  margin: 1rem 0 2rem !important;
  display: block;
}
.ginput_container_fileupload .fileupload {
  padding: 0.5rem 1rem;
  background-color: #da291c;
  display: inline-block;
  cursor: pointer;
  color: #fff;
  font-weight: 700;
  position: relative;
  cursor: pointer;
}
.ginput_container_fileupload .fileupload:hover {
  background-color: #ad2116;
}
.ginput_container_fileupload .screen-reader-text {
  font-weight: 300;
  font-size: 1.4rem;
  clear: both;
  margin: 0 0 0 1rem;
}
.ginput_container_fileupload input[type=file] {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100%;
  opacity: 0;
  z-index: 200;
  filter: alpha(opacity=0);
  cursor: pointer;
}
.ginput_container_fileupload label {
  display: none;
}

.ginput_container_consent label {
  margin: 0;
  padding: 0 0 0 30px;
  font-weight: 400;
  position: relative;
}
.ginput_container_consent label:before, .ginput_container_consent label:after {
  position: absolute;
  left: 0;
  top: 0;
}
.ginput_container_consent label:before {
  display: block;
  content: "";
  width: 20px;
  height: 20px;
  border: 1px solid #425563;
}
.newsletter .ginput_container_consent label:before, .c-red-block .ginput_container_consent label:before {
  border-color: white;
}
.ginput_container_consent label:after {
  content: "";
  font-family: FontAwesome;
  left: 2px;
  top: -2px;
  z-index: 100;
  display: none;
}
.ginput_container_consent input {
  display: none;
}
.ginput_container_consent input:checked + label:after {
  display: block;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

body.compensate-for-scrollbar {
  overflow: hidden;
}

.fancybox-active {
  height: auto;
}

.fancybox-is-hidden {
  left: -9999px;
  margin: 0;
  position: absolute !important;
  top: -9999px;
  visibility: hidden;
}

.fancybox-container {
  -webkit-backface-visibility: hidden;
  height: 100%;
  left: 0;
  outline: none;
  position: fixed;
  -webkit-tap-highlight-color: transparent;
  top: 0;
  touch-action: manipulation;
  transform: translateZ(0);
  width: 100%;
  z-index: 99992;
}

.fancybox-container * {
  box-sizing: border-box;
}

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.fancybox-outer {
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
}

.fancybox-bg {
  background: #1e1e1e;
  opacity: 0;
  transition-duration: inherit;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
}

.fancybox-is-open .fancybox-bg {
  opacity: 0.9;
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption,
.fancybox-navigation .fancybox-button {
  direction: ltr;
  opacity: 0;
  position: absolute;
  transition: opacity 0.25s ease, visibility 0s ease 0.25s;
  visibility: hidden;
  z-index: 99997;
}

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption,
.fancybox-show-nav .fancybox-navigation .fancybox-button {
  opacity: 1;
  transition: opacity 0.25s ease 0s, visibility 0s ease 0s;
  visibility: visible;
}

.fancybox-infobar {
  color: #ccc;
  font-size: 13px;
  -webkit-font-smoothing: subpixel-antialiased;
  height: 44px;
  left: 0;
  line-height: 44px;
  min-width: 44px;
  mix-blend-mode: difference;
  padding: 0 10px;
  pointer-events: none;
  top: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fancybox-toolbar {
  right: 0;
  top: 0;
}

.fancybox-stage {
  direction: ltr;
  overflow: visible;
  transform: translateZ(0);
  z-index: 99994;
}

.fancybox-is-open .fancybox-stage {
  overflow: hidden;
}

.fancybox-slide {
  -webkit-backface-visibility: hidden;
  /* Using without prefix would break IE11 */
  display: none;
  height: 100%;
  left: 0;
  outline: none;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: absolute;
  text-align: center;
  top: 0;
  transition-property: transform, opacity;
  white-space: normal;
  width: 100%;
  z-index: 99994;
}

.fancybox-slide::before {
  content: "";
  display: inline-block;
  font-size: 0;
  height: 100%;
  vertical-align: middle;
  width: 0;
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next {
  display: block;
}

.fancybox-slide--image {
  overflow: hidden;
  padding: 44px 0;
}

.fancybox-slide--image::before {
  display: none;
}

.fancybox-slide--html {
  padding: 6px;
}

.fancybox-content {
  background: #fff;
  display: inline-block;
  margin: 0;
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: relative;
  text-align: left;
  vertical-align: middle;
}

.fancybox-slide--image .fancybox-content {
  -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
          animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  -webkit-backface-visibility: hidden;
  background: transparent;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  left: 0;
  max-width: none;
  overflow: visible;
  padding: 0;
  position: absolute;
  top: 0;
  transform-origin: top left;
  transition-property: transform, opacity;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  z-index: 99995;
}

.fancybox-can-zoomOut .fancybox-content {
  cursor: zoom-out;
}

.fancybox-can-zoomIn .fancybox-content {
  cursor: zoom-in;
}

.fancybox-can-swipe .fancybox-content,
.fancybox-can-pan .fancybox-content {
  cursor: -webkit-grab;
  cursor: grab;
}

.fancybox-is-grabbing .fancybox-content {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.fancybox-container [data-selectable=true] {
  cursor: text;
}

.fancybox-image,
.fancybox-spaceball {
  background: transparent;
  border: 0;
  height: 100%;
  left: 0;
  margin: 0;
  max-height: none;
  max-width: none;
  padding: 0;
  position: absolute;
  top: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 100%;
}

.fancybox-spaceball {
  z-index: 1;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--pdf .fancybox-content,
.fancybox-slide--iframe .fancybox-content {
  height: 100%;
  overflow: visible;
  padding: 0;
  width: 100%;
}

.fancybox-slide--video .fancybox-content {
  background: #000;
}

.fancybox-slide--map .fancybox-content {
  background: #e5e3df;
}

.fancybox-slide--iframe .fancybox-content {
  background: #fff;
}

.fancybox-video,
.fancybox-iframe {
  background: transparent;
  border: 0;
  display: block;
  height: 100%;
  margin: 0;
  overflow: hidden;
  padding: 0;
  width: 100%;
}

/* Fix iOS */
.fancybox-iframe {
  left: 0;
  position: absolute;
  top: 0;
}

.fancybox-error {
  background: #fff;
  cursor: default;
  max-width: 400px;
  padding: 40px;
  width: 100%;
}

.fancybox-error p {
  color: #444;
  font-size: 16px;
  line-height: 20px;
  margin: 0;
  padding: 0;
}

/* Buttons */
.fancybox-button {
  background: rgba(30, 30, 30, 0.6);
  border: 0;
  border-radius: 0;
  box-shadow: none;
  cursor: pointer;
  display: inline-block;
  height: 44px;
  margin: 0;
  padding: 10px;
  position: relative;
  transition: color 0.2s;
  vertical-align: top;
  visibility: inherit;
  width: 44px;
}

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
  color: #ccc;
}

.fancybox-button:hover {
  color: #fff;
}

.fancybox-button:focus {
  outline: none;
}

.fancybox-button.fancybox-focus {
  outline: 1px dotted;
}

.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
  color: #888;
  cursor: default;
  outline: none;
}

/* Fix IE11 */
.fancybox-button div {
  height: 100%;
}

.fancybox-button svg {
  display: block;
  height: 100%;
  overflow: visible;
  position: relative;
  width: 100%;
}

.fancybox-button svg path {
  fill: currentColor;
  stroke-width: 0;
}

.fancybox-button--play svg:nth-child(2),
.fancybox-button--fsenter svg:nth-child(2) {
  display: none;
}

.fancybox-button--pause svg:nth-child(1),
.fancybox-button--fsexit svg:nth-child(1) {
  display: none;
}

.fancybox-progress {
  background: #ff5268;
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform: scaleX(0);
  transform-origin: 0;
  transition-property: transform;
  transition-timing-function: linear;
  z-index: 99998;
}

/* Close button on the top right corner of html content */
.fancybox-close-small {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: #ccc;
  cursor: pointer;
  opacity: 0.8;
  padding: 8px;
  position: absolute;
  right: -12px;
  top: -44px;
  z-index: 401;
}

.fancybox-close-small:hover {
  color: #fff;
  opacity: 1;
}

.fancybox-slide--html .fancybox-close-small {
  color: currentColor;
  padding: 10px;
  right: 0;
  top: 0;
}

.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
  overflow: hidden;
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
  display: none;
}

/* Navigation arrows */
.fancybox-navigation .fancybox-button {
  background-clip: content-box;
  height: 100px;
  opacity: 0;
  position: absolute;
  top: calc(50% - 50px);
  width: 70px;
}

.fancybox-navigation .fancybox-button div {
  padding: 7px;
}

.fancybox-navigation .fancybox-button--arrow_left {
  left: 0;
  left: env(safe-area-inset-left);
  padding: 31px 26px 31px 6px;
}

.fancybox-navigation .fancybox-button--arrow_right {
  padding: 31px 6px 31px 26px;
  right: 0;
  right: env(safe-area-inset-right);
}

/* Caption */
.fancybox-caption {
  background: linear-gradient(to top, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.15) 65%, rgba(0, 0, 0, 0.075) 75.5%, rgba(0, 0, 0, 0.037) 82.85%, rgba(0, 0, 0, 0.019) 88%, rgba(0, 0, 0, 0) 100%);
  bottom: 0;
  color: #eee;
  font-size: 14px;
  font-weight: 400;
  left: 0;
  line-height: 1.5;
  padding: 75px 44px 25px 44px;
  pointer-events: none;
  right: 0;
  text-align: center;
  z-index: 99996;
}

.fancybox-caption--separate {
  margin-top: -50px;
}

.fancybox-caption__body {
  max-height: 50vh;
  overflow: auto;
  pointer-events: all;
}

.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited {
  color: #ccc;
  text-decoration: none;
}

.fancybox-caption a:hover {
  color: #fff;
  text-decoration: underline;
}

/* Loading indicator */
.fancybox-loading {
  -webkit-animation: fancybox-rotate 1s linear infinite;
          animation: fancybox-rotate 1s linear infinite;
  background: transparent;
  border: 4px solid #888;
  border-bottom-color: #fff;
  border-radius: 50%;
  height: 50px;
  left: 50%;
  margin: -25px 0 0 -25px;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  width: 50px;
  z-index: 99999;
}

@-webkit-keyframes fancybox-rotate {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes fancybox-rotate {
  100% {
    transform: rotate(360deg);
  }
}
/* Transition effects */
.fancybox-animated {
  transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
}

/* transitionEffect: slide */
.fancybox-fx-slide.fancybox-slide--previous {
  opacity: 0;
  transform: translate3d(-100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--next {
  opacity: 0;
  transform: translate3d(100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--current {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

/* transitionEffect: fade */
.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next {
  opacity: 0;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.fancybox-fx-fade.fancybox-slide--current {
  opacity: 1;
}

/* transitionEffect: zoom-in-out */
.fancybox-fx-zoom-in-out.fancybox-slide--previous {
  opacity: 0;
  transform: scale3d(1.5, 1.5, 1.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
  opacity: 0;
  transform: scale3d(0.5, 0.5, 0.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
  opacity: 1;
  transform: scale3d(1, 1, 1);
}

/* transitionEffect: rotate */
.fancybox-fx-rotate.fancybox-slide--previous {
  opacity: 0;
  transform: rotate(-360deg);
}

.fancybox-fx-rotate.fancybox-slide--next {
  opacity: 0;
  transform: rotate(360deg);
}

.fancybox-fx-rotate.fancybox-slide--current {
  opacity: 1;
  transform: rotate(0deg);
}

/* transitionEffect: circular */
.fancybox-fx-circular.fancybox-slide--previous {
  opacity: 0;
  transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--next {
  opacity: 0;
  transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--current {
  opacity: 1;
  transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
}

/* transitionEffect: tube */
.fancybox-fx-tube.fancybox-slide--previous {
  transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
}

.fancybox-fx-tube.fancybox-slide--next {
  transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
}

.fancybox-fx-tube.fancybox-slide--current {
  transform: translate3d(0, 0, 0) scale(1);
}

/* Styling for Small-Screen Devices */
@media all and (max-height: 576px) {
  .fancybox-slide {
    padding-left: 6px;
    padding-right: 6px;
  }

  .fancybox-slide--image {
    padding: 6px 0;
  }

  .fancybox-close-small {
    right: -6px;
  }

  .fancybox-slide--image .fancybox-close-small {
    background: #4e4e4e;
    color: #f2f4f6;
    height: 36px;
    opacity: 1;
    padding: 6px;
    right: 0;
    top: 0;
    width: 36px;
  }

  .fancybox-caption {
    padding-left: 12px;
    padding-right: 12px;
  }
}
/* Share */
.fancybox-share {
  background: #f4f4f4;
  border-radius: 3px;
  max-width: 90%;
  padding: 30px;
  text-align: center;
}

.fancybox-share h1 {
  color: #222;
  font-size: 35px;
  font-weight: 700;
  margin: 0 0 20px 0;
}

.fancybox-share p {
  margin: 0;
  padding: 0;
}

.fancybox-share__button {
  border: 0;
  border-radius: 3px;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  line-height: 40px;
  margin: 0 5px 10px 5px;
  min-width: 130px;
  padding: 0 15px;
  text-decoration: none;
  transition: all 0.2s;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap;
}

.fancybox-share__button:visited,
.fancybox-share__button:link {
  color: #fff;
}

.fancybox-share__button:hover {
  text-decoration: none;
}

.fancybox-share__button--fb {
  background: #3b5998;
}

.fancybox-share__button--fb:hover {
  background: #344e86;
}

.fancybox-share__button--pt {
  background: #bd081d;
}

.fancybox-share__button--pt:hover {
  background: #aa0719;
}

.fancybox-share__button--tw {
  background: #1da1f2;
}

.fancybox-share__button--tw:hover {
  background: #0d95e8;
}

.fancybox-share__button svg {
  height: 25px;
  margin-right: 7px;
  position: relative;
  top: -1px;
  vertical-align: middle;
  width: 25px;
}

.fancybox-share__button svg path {
  fill: #fff;
}

.fancybox-share__input {
  background: transparent;
  border: 0;
  border-bottom: 1px solid #d7d7d7;
  border-radius: 0;
  color: #5d5b5b;
  font-size: 14px;
  margin: 10px 0 0 0;
  outline: none;
  padding: 10px 15px;
  width: 100%;
}

/* Thumbs */
.fancybox-thumbs {
  background: #ddd;
  bottom: 0;
  display: none;
  margin: 0;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  padding: 2px 2px 4px 2px;
  position: absolute;
  right: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  top: 0;
  width: 212px;
  z-index: 99995;
}

.fancybox-thumbs-x {
  overflow-x: auto;
  overflow-y: hidden;
}

.fancybox-show-thumbs .fancybox-thumbs {
  display: block;
}

.fancybox-show-thumbs .fancybox-inner {
  right: 212px;
}

.fancybox-thumbs__list {
  font-size: 0;
  height: 100%;
  list-style: none;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  position: absolute;
  position: relative;
  white-space: nowrap;
  width: 100%;
}

.fancybox-thumbs-x .fancybox-thumbs__list {
  overflow: hidden;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
  width: 7px;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
  background: #fff;
  border-radius: 10px;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 10px;
}

.fancybox-thumbs__list a {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-color: rgba(0, 0, 0, 0.1);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  cursor: pointer;
  float: left;
  height: 75px;
  margin: 2px;
  max-height: calc(100% - 8px);
  max-width: calc(50% - 4px);
  outline: none;
  overflow: hidden;
  padding: 0;
  position: relative;
  -webkit-tap-highlight-color: transparent;
  width: 100px;
}

.fancybox-thumbs__list a::before {
  border: 6px solid #ff5268;
  bottom: 0;
  content: "";
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 99991;
}

.fancybox-thumbs__list a:focus::before {
  opacity: 0.5;
}

.fancybox-thumbs__list a.fancybox-thumbs-active::before {
  opacity: 1;
}

/* Styling for Small-Screen Devices */
@media all and (max-width: 576px) {
  .fancybox-thumbs {
    width: 110px;
  }

  .fancybox-show-thumbs .fancybox-inner {
    right: 110px;
  }

  .fancybox-thumbs__list a {
    max-width: calc(100% - 10px);
  }
}
.so-widget-sow-editor {
  margin-bottom: 6rem !important;
}
@media screen and (max-width: 768px) {
  .so-widget-sow-editor {
    margin-bottom: 2rem !important;
  }
}
.multiple-blocks .so-widget-sow-editor {
  margin-bottom: 0 !important;
}

.panel-layout .so-panel {
  margin-bottom: 0 !important;
}

.sow-image-container img {
  height: auto;
}

.select2-hidden-accessible {
  display: none !important;
  height: 0;
  opacity: 0;
  visibility: hidden;
}

.select2-search--hide {
  display: none;
}

.select2-selection {
  position: relative;
  display: block;
  font-size: 1.6rem;
  width: 100%;
  max-width: 100% !important;
  height: 50px;
  padding: 1em 37px 1em 10px;
  background-color: #fff;
  border: 1px solid #425563;
  border-radius: 0;
  box-shadow: none;
  box-sizing: border-box;
}
.select2-container--open .select2-selection {
  border-color: #da291c;
}
.select2-selection:after {
  content: "";
  background: url(../images/cheops-arrow-down.svg) no-repeat center center;
  width: 8px;
  height: 8px;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.2s ease;
  z-index: 100;
}
.select2-container--open .select2-selection:after {
  transform: rotate(-180deg) translateY(50%);
  border-top-color: #da291c;
}

.select2-results ul {
  list-style: none;
  padding: 0;
  margin: 49px 0 0 0;
  background-color: white;
  border: 1px solid #da291c;
  border-top: 1px solid white;
}
.select2-results ul li {
  padding: 0.5rem 1rem;
  transition: all 0.5s ease-in-out;
  cursor: pointer;
  color: #000;
}
.select2-results ul li:hover {
  background-color: #da291c;
  color: #fff;
}

/*
 * Components
 * Specific UI components. This is where majority of our work takes place and
 * our UI components are often composed of Objects and Components
 */
.application {
  width: 100%;
  padding: 4rem 0;
}
.application-wrap {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .application-wrap {
    display: block;
  }
}
.application h4 {
  width: 45%;
  color: #fff;
}
@media (max-width: 768px) {
  .application h4 {
    width: 100%;
  }
}
.application ol {
  width: 100%;
  padding: 0 0 0 1.5rem;
}
.application ol li {
  color: #fff;
}

.block-content {
  padding: 60px 0;
}
@media screen and (max-width: 1024px) {
  .block-content {
    padding: 2rem 0;
  }
}
.block-content-wrap {
  width: 80%;
  margin: 0 auto;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .block-content-wrap {
    width: 100%;
    text-align: left;
  }
}

.widget_intracto-cheops-cta-widget .cheops-cta .article-outer-wrapper {
  background-color: #da291c;
}
.widget_intracto-cheops-cta-widget .cheops-cta .article-outer-wrapper .article-inner-cta-wrapper .inner-article-cta {
  padding: 30px;
}
.widget_intracto-cheops-cta-widget .cheops-cta .article-outer-wrapper .article-inner-cta-wrapper .inner-article-cta h4 {
  color: #fff;
  font-family: "Volkart";
  font-size: 40px;
  line-height: 45px;
  margin-bottom: 20px;
}
.widget_intracto-cheops-cta-widget .cheops-cta .article-outer-wrapper .article-inner-cta-wrapper .inner-article-cta p {
  color: #fff;
  font-size: 18px;
  margin-bottom: 30px;
}

.blocks {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.blocks__item {
  text-decoration: none;
  position: relative;
  color: #000;
}
.blocks__item--content {
  background-color: #fff;
  position: absolute;
  padding: 2rem 2rem 0 0;
  width: 90%;
  bottom: 0;
  left: 0;
}
.blocks__item.gray {
  background-color: #dde1e4;
}
.blocks__item.white {
  background-color: #fff;
}
.blocks__item.bg-image {
  min-height: 350px;
  background-position: center center;
  background-size: cover;
}
.blocks__item .block-equal {
  min-height: 80px;
}
.blocks__item a {
  color: inherit;
}
.blocks__item i {
  font-size: 100px;
  margin: 0 0 2rem;
}

.blocks-two .blocks__item {
  width: 48%;
}
@media screen and (max-width: 768px) {
  .blocks-two .blocks__item {
    width: 100%;
    margin: 0 0 2rem;
  }
}

.blocks-three .blocks__item {
  width: 31.33%;
}
@media screen and (max-width: 768px) {
  .blocks-three .blocks__item {
    width: 100%;
    margin: 0 0 3rem;
  }
}

.blocks-four {
  justify-content: flex-start;
}
.blocks-four .blocks__item {
  width: 23%;
  padding: 2rem;
  margin: 20px 2% 0 0;
  float: left;
  min-height: 260px;
}
@media screen and (max-width: 1024px) {
  .blocks-four .blocks__item {
    width: 48%;
    min-height: 220px;
  }
}
@media screen and (max-width: 768px) {
  .blocks-four .blocks__item {
    width: 100%;
    margin: 0 0 20px;
    height: auto;
  }
}
.blocks-four .blocks__item .white-box-title {
  font-family: "Volkart";
  font-weight: 800;
  font-size: 20px;
  color: #000;
  display: flex;
}
.blocks-four .blocks__item .white-box-title:hover {
  color: #da291c;
  text-decoration: none !important;
}
.blocks-four .blocks__item .underline {
  width: calc(100% - 1rem);
  margin: 1rem auto 0;
  height: 5px;
  background-color: #da291c;
  position: relative;
}
.blocks-four .blocks__item .underline::before {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  bottom: 0;
  left: -5px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 0);
  transform: rotate(90deg);
  transition: all 0.25s ease-out;
}
.blocks-four .blocks__item .underline::after {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  bottom: 0;
  right: -5px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 0);
  transform: rotate(-90deg);
  transition: all 0.25s ease-out;
}
.blocks-four .blocks__item p {
  color: #425563;
}
.blocks-four .blocks__item img {
  width: 40%;
  height: auto;
  margin: 0 0 40px;
}
@media screen and (max-width: 1024px) {
  .blocks-four .blocks__item img {
    width: 25%;
  }
}

.blocks-info {
  padding: 60px 0;
  background-color: #f1f3f4;
}
@media screen and (max-width: 768px) {
  .blocks-info {
    padding: 3rem 0;
  }
}

.breadcrumbs {
  font-size: 1.6rem;
  margin: 0 0 10px;
  display: block;
}

.bullets {
  padding: 8rem 0;
  background-color: #da291c;
  text-align: center;
}
.bullets-wrap {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.bullets__item {
  width: 19%;
  margin: 2%;
}
@media screen and (max-width: 1024px) {
  .bullets__item {
    width: 48%;
  }
}
@media screen and (max-width: 375px) {
  .bullets__item {
    width: 100%;
  }
}
.bullets__item img {
  width: 10rem;
  margin: 0 auto;
}
.bullets__item p {
  color: #fff;
  opacity: 0.8;
}
.bullets h3 {
  font-size: 2.5rem;
  font-weight: 700;
  color: #fff;
}

/*
 *  Components: Buttons
 *  ---
 *  Collection of buttons
 */
.c-btn--link {
  text-decoration: underline;
  padding: 0;
}
.c-btn--link:hover, .c-btn--link:focus {
  color: #F24747;
}

input[type=submit] {
  padding: 10px;
  background-color: #fff;
  font-weight: bold;
  border: none;
}

.c-btn--more {
  color: #da291c;
  font-weight: 800;
  font-size: 1.6rem;
  text-transform: uppercase;
  position: relative;
  background-color: transparent;
  border: none;
  outline: none;
  display: flex;
  align-items: center;
  text-align: left;
  padding: 0;
}
.c-btn--more:hover {
  color: #ad2116;
}
.c-btn--more:hover svg {
  fill: #ad2116;
}
.c-btn--more .icon {
  width: 1.8rem;
  height: 1.8rem;
  margin: 0 1rem 0 0;
}
.c-btn--more span {
  font-size: 1.6rem;
  padding: 0.2rem 0 0;
}
.c-btn--more svg {
  fill: #da291c;
}

.btn {
  border-radius: 0 !important;
  font-weight: bold;
}

.btn-primary,
.c-btn--prim {
  padding: 0.75em 1em;
  font-size: 18px;
  font-weight: 700;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  border: 0;
  border-radius: 0;
  color: #da291c !important;
  box-shadow: 8px 8px #da291c;
  position: relative;
  transition: all 0.25s ease-out;
  display: inline-block;
  cursor: pointer;
  background-color: #fff !important;
}
.btn-primary:hover,
.c-btn--prim:hover {
  box-shadow: 1px 1px #da291c;
  transform: translate(4px, 4px);
  background-color: #fff !important;
  color: #da291c !important;
}
.btn-primary::before,
.c-btn--prim::before {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  bottom: -8px;
  left: 0;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(90deg);
  transition: all 0.25s ease-out;
}
.btn-primary::after,
.c-btn--prim::after {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  top: 0;
  right: -8px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(-90deg);
  transition: all 0.25s ease-out;
}
.btn-primary:hover::before,
.c-btn--prim:hover::before {
  width: 1px;
  height: 1px;
  bottom: -1px;
}
.btn-primary:hover::after,
.c-btn--prim:hover::after {
  width: 1px;
  height: 1px;
  right: -1px;
}
.btn-primary:focus,
.c-btn--prim:focus {
  outline: 0;
}

.btn-secondary, .c-lead-capture__form .gform_button,
.c-btn--sec {
  background-color: #fff !important;
  padding: 12px 18px;
  font-size: 18px;
  font-weight: 700;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  border: 0;
  border-radius: 0;
  color: #000;
  box-shadow: 8px 8px #000;
  position: relative;
  transition: all 0.25s ease-out;
  display: inline-block;
  cursor: pointer;
}
.btn-secondary:hover, .c-lead-capture__form .gform_button:hover, .btn-secondary:active, .c-lead-capture__form .gform_button:active,
.c-btn--sec:hover,
.c-btn--sec:active {
  box-shadow: 1px 1px #000;
  transform: translate(4px, 4px);
  background-color: #fff !important;
  color: #000 !important;
}
.btn-secondary::before, .c-lead-capture__form .gform_button::before,
.c-btn--sec::before {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  bottom: -8px;
  left: 0;
  background-image: linear-gradient(315deg, transparent 50%, #000 50%);
  transform: rotate(90deg);
  transition: all 0.25s ease-out;
}
.btn-secondary::after, .c-lead-capture__form .gform_button::after,
.c-btn--sec::after {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  top: 0;
  right: -8px;
  background-image: linear-gradient(315deg, transparent 50%, #000 50%);
  transform: rotate(-90deg);
  transition: all 0.25s ease-out;
}
.btn-secondary:hover::before, .c-lead-capture__form .gform_button:hover::before,
.c-btn--sec:hover::before {
  width: 1px;
  height: 1px;
  bottom: -1px;
}
.btn-secondary:hover::after, .c-lead-capture__form .gform_button:hover::after,
.c-btn--sec:hover::after {
  width: 1px;
  height: 1px;
  right: -1px;
}
.btn-secondary:focus, .c-lead-capture__form .gform_button:focus,
.c-btn--sec:focus {
  outline: 0;
}

.btn-cheops-red {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: #fff;
  border: 0;
  box-shadow: -0.5rem 0.5rem red;
  position: relative;
  transition: box-shadow 0.25s ease-out, transform 0.25s ease-out;
}
.btn-cheops-red:hover, .btn-cheops-red:active {
  box-shadow: -0.1rem 0.1rem red;
  transform: translate(-0.4rem, 0.4rem);
}
.btn-cheops-red:focus {
  outline: 0;
}
.btn-cheops-red::after, .btn-cheops-red::before {
  content: "";
  display: inline-block;
  height: 0.5rem;
  position: absolute;
  transition: left 0.25s ease-out, bottom 0.25s ease-out, height 0.25s ease-out, width 0.25s ease-out;
  width: 0.5rem;
}
.btn-cheops-red::after {
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  bottom: -0.5rem;
  right: 0;
}
.btn-cheops-red::before {
  background-image: linear-gradient(135deg, transparent 50%, #da291c 50%);
  left: -0.5rem;
  top: 0;
}
.btn-cheops-red:active::after, .btn-cheops-red:hover::after, .btn-cheops-red:active::before, .btn-cheops-red:hover::before {
  height: 0.1rem;
  width: 0.1rem;
}
.btn-cheops-red:active::after, .btn-cheops-red:hover::after {
  bottom: -0.1rem;
}
.btn-cheops-red:active::before, .btn-cheops-red:hover::before {
  left: -0.1rem;
}

.btn-cheops-black {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  font-family: Volkart-ExtraBold;
  background-color: #fff;
  border: 0;
  box-shadow: 0.5rem 0.5rem #000;
  position: relative;
  transition: box-shadow 0.25s ease-out, transform 0.25s ease-out;
  color: #000;
}
.btn-cheops-black:hover, .btn-cheops-black:active {
  box-shadow: 0.1rem 0.1rem #000;
  transform: translate(0.4rem, 0.4rem);
  color: #000;
}
.btn-cheops-black:focus {
  outline: 0;
  color: #000;
}
.btn-cheops-black::after, .btn-cheops-black::before {
  content: "";
  display: inline-block;
  height: 0.5rem;
  position: absolute;
  transition: right 0.25s ease-out, bottom 0.25s ease-out, height 0.25s ease-out, width 0.25s ease-out;
  width: 0.5rem;
}
.btn-cheops-black::after {
  background-image: linear-gradient(45deg, transparent 50%, #000 50%);
  bottom: -0.5rem;
  left: 0;
}
.btn-cheops-black::before {
  background-image: linear-gradient(225deg, transparent 50%, #000 50%);
  right: -0.5rem;
  top: 0;
}
.btn-cheops-black:active::after, .btn-cheops-black:hover::after, .btn-cheops-black:active::before, .btn-cheops-black:hover::before {
  height: 0.1rem;
  width: 0.1rem;
}
.btn-cheops-black:active::after, .btn-cheops-black:hover::after {
  bottom: -0.1rem;
}
.btn-cheops-black:active::before, .btn-cheops-black:hover::before {
  right: -0.1rem;
}

.btn-cheops-header {
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
       appearance: none !important;
  background-color: #fff !important;
  border: 0 !important;
  box-shadow: -0.5rem 0.5rem red !important;
  position: relative !important;
  transition: box-shadow 0.25s ease-out, transform 0.25s ease-out !important;
}
.btn-cheops-header:hover, .btn-cheops-header:active {
  box-shadow: -0.1rem 0.1rem #da291c !important;
  transform: translate(-0.4rem, 0.4rem) !important;
}
.btn-cheops-header:focus {
  outline: 0 !important;
}
.btn-cheops-header::after, .btn-cheops-header::before {
  content: "" !important;
  display: inline-block !important;
  height: 0.5rem !important;
  position: absolute !important;
  transition: left 0.25s ease-out, bottom 0.25s ease-out, height 0.25s ease-out, width 0.25s ease-out !important;
  width: 0.5rem !important;
}
.btn-cheops-header::after {
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%) !important;
  bottom: -0.5rem !important;
  right: 0 !important;
}
.btn-cheops-header::before {
  background-image: linear-gradient(135deg, transparent 50%, #da291c 50%) !important;
  left: -0.5rem !important;
  top: 0 !important;
}
.btn-cheops-header:active::after, .btn-cheops-header:hover::after, .btn-cheops-header:active::before, .btn-cheops-header:hover::before {
  height: 0.1rem !important;
  width: 0.1rem !important;
}
.btn-cheops-header:active::after, .btn-cheops-header:hover::after {
  bottom: -0.1rem !important;
}
.btn-cheops-header:active::before, .btn-cheops-header:hover::before {
  left: -0.1rem !important;
}

#jobs-archive-wrapper .btn-cheops-black {
  color: #000;
}

.btn-cheops-loadmore {
  font-size: 16px;
  text-transform: uppercase;
  color: #da291c;
  background: none;
  border: none;
  clear: both;
  width: 100%;
  outline: none !important;
}
.btn-cheops-loadmore:before {
  content: url("../images/loadmore.svg");
  width: 16px;
  display: inline-block;
  vertical-align: middle;
  color: #da291c;
  margin-right: 10px;
}

.c-btn--plain {
  background-color: #da291c;
  color: white;
  padding: 0.75em 1.25em;
  transition: 0.3s ease all;
  border: 0;
}
.c-btn--plain:hover, .c-btn--plain:focus {
  background-color: #ad2116;
  color: white;
}

.c-btn-wrapper {
  margin: 2em 0;
}

.contact-page {
  padding: 6rem 0;
}
@media screen and (max-width: 768px) {
  .contact-page {
    padding: 3rem 0;
  }
}
.contact-page-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.contact-page__form {
  width: 60%;
  margin: 0 5% 0 0;
}
@media screen and (max-width: 768px) {
  .contact-page__form {
    width: 100%;
    margin: 0;
  }
}
.contact-page__content {
  width: 35%;
}
@media screen and (max-width: 768px) {
  .contact-page__content {
    width: 100%;
    margin: 4rem 0 0;
  }
}

.contact-info {
  margin: 0 0 2rem;
  padding: 0 0 2rem;
  border-bottom: 1px solid #dde1e4;
}
.contact-info:first-child {
  border-top: 1px solid #dde1e4;
  padding-top: 2rem;
}
.contact-info:last-child {
  border-bottom: none;
}

.c-contact-blocks {
  position: fixed;
  right: 0;
  bottom: 8rem;
  z-index: 900;
}
@media (max-width: 667px) {
  .c-contact-blocks {
    display: none;
  }
}
.c-contact-blocks__item {
  width: 22rem;
  background-color: #da291c;
  margin: 1rem 0;
  text-align: center;
  display: flex;
  align-items: center;
}
.c-contact-blocks__item:hover svg {
  fill: #fff;
}
.c-contact-blocks__item.hide {
  transform: translateX(16rem);
}
.c-contact-blocks__item.slide-in {
  -webkit-animation: 1s slideOut forwards;
          animation: 1s slideOut forwards;
}
.c-contact-blocks__item.slide-out {
  -webkit-animation: 1s slideIn forwards;
          animation: 1s slideIn forwards;
}
.c-contact-blocks__item .c-btn--more {
  color: #fff;
  font-size: 18;
  font-weight: 400;
  padding: 1rem;
}
.c-contact-blocks__item .c-btn--more:hover {
  color: #fff;
}
.c-contact-blocks__item svg {
  width: 4rem;
  height: 4rem;
  display: inline-block;
  fill: #fff;
  margin-right: 2rem;
}
.c-contact-blocks__item i {
  font-size: 3rem;
  padding-left: 0.5rem;
  padding-right: 2rem;
}

.c-contact-block .gform_fields {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.c-contact-block .gform_fields li {
  width: 100%;
}
.c-contact-block .gform_fields li:nth-child(1), .c-contact-block .gform_fields li:nth-child(2), .c-contact-block .gform_fields li:nth-child(3), .c-contact-block .gform_fields li:nth-child(4) {
  width: 49%;
  margin: 0 0 2%;
}
@media screen and (max-width: 667px) {
  .c-contact-block .gform_fields li:nth-child(1), .c-contact-block .gform_fields li:nth-child(2), .c-contact-block .gform_fields li:nth-child(3), .c-contact-block .gform_fields li:nth-child(4) {
    width: 100%;
  }
}

.footer {
  width: 100%;
  padding: 40px 0 0;
  background-color: #000;
  font-size: 1.4rem;
}
.footer-wrap {
  display: flex;
  flex-wrap: wrap;
}
.footer__column {
  width: 20%;
  padding: 30px 20px;
}
@media screen and (max-width: 1200px) {
  .footer__column {
    width: 23%;
  }
}
@media screen and (max-width: 1024px) {
  .footer__column {
    width: 33.33%;
    padding: 0 0 20px;
  }
}
@media screen and (max-width: 768px) {
  .footer__column {
    width: 50%;
  }
}
@media screen and (max-width: 667px) {
  .footer__column {
    width: 100%;
    margin: 0 0 20px;
  }
}
.footer__column:first-child {
  width: 40%;
  padding: 20px 20px 20px 0;
}
@media screen and (max-width: 1200px) {
  .footer__column:first-child {
    width: 31%;
  }
}
@media screen and (max-width: 1024px) {
  .footer__column:first-child {
    width: 100%;
  }
}
.footer__column .seo-text {
  padding: 0.2rem 0 0;
  margin: 0;
}
.footer__column ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.footer__column ul .open p {
  display: block;
  height: auto;
  transition: all 1s ease-in-out;
}
@media screen and (min-width: 1025px) {
  .footer__column ul .open span::after {
    transform: rotate(180deg);
    top: 22%;
  }
}
.footer__column ul li {
  width: 100%;
  line-height: 1.5;
  padding: 0.5rem 0 0;
}
.footer__column ul li .toggle {
  margin: 0 0 1rem;
  display: inline-block;
  font-weight: 700;
}
.footer__column ul li span {
  color: #fff;
  font-size: 1.6rem;
  position: relative;
  cursor: pointer;
}
.footer__column ul li span::after {
  content: "";
  position: absolute;
  background: url(../images/cheops-arrow-down.svg) no-repeat;
  width: 8px;
  height: 8px;
  margin-left: 0;
  border: none;
  top: 50%;
  right: -15px;
  transform: translateY(-60%);
  z-index: 500;
}
.footer__column ul li p {
  display: none;
  height: 0;
  margin: 0;
}
@media screen and (max-width: 1024px) {
  .footer__column ul li p {
    display: block;
    height: auto;
  }
}
.footer__row {
  width: 100%;
  border-top: 1px solid #fff;
  display: flex;
  justify-content: space-between;
  padding: 30px 10px;
  align-items: center;
}
@media screen and (max-width: 667px) {
  .footer__row {
    display: block;
  }
}
.footer svg {
  width: 165px;
  height: 4rem;
  margin: 0 0 12px;
}
.footer h6 {
  color: #fff;
  margin: 0 0 20px;
}
.footer a, .footer p {
  color: #fff;
  font-size: 1.4rem;
}
.footer a:hover {
  color: #da291c;
}

.footer-nav-inline {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .footer-nav-inline {
    display: block;
    overflow: hidden;
  }
}
.footer-nav-inline ul {
  list-style: none;
}
.footer-nav-inline span {
  color: #fff;
  margin: 0 40px 0 0;
}
.footer-nav-inline a {
  text-decoration: underline;
}

.footer-social {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 667px) {
  .footer-social {
    text-align: right;
    margin: 10px 0 0;
  }
}
.footer-social li {
  padding: 0 0 0 10px;
}
.footer-social li i {
  font-size: 2.5rem;
  color: #fff;
}
.footer-social li i:hover {
  color: #da291c;
}

.footer-location__city {
  margin-bottom: 0;
  position: relative;
  display: inline-block;
}
.footer-location__city:after {
  content: "";
  position: absolute;
  background: url(../images/cheops-arrow-down.svg) no-repeat;
  width: 8px;
  height: 8px;
  margin-left: 0;
  border: none;
  top: 50%;
  right: -15px;
  transform: translateY(-60%);
  z-index: 500;
}
.footer-location__city:hover {
  cursor: pointer;
}
.footer-location__details {
  height: 0;
  overflow: hidden;
  font-size: 13px !important;
  -webkit-animation: location-slideout 0.3s forwards;
          animation: location-slideout 0.3s forwards;
}
.footer-location.open .footer-location__details {
  -webkit-animation: location-slidein 0.3s forwards;
          animation: location-slidein 0.3s forwards;
}
@media (min-width: 1024px) {
  .footer-location.open .footer-location__details {
    max-height: 65px;
  }
}
.footer-location.open .footer-location__city:after {
  transform: translateY(-60%) rotate(180deg);
}

@-webkit-keyframes location-slidein {
  0% {
    height: 0;
  }
  100% {
    height: 75px;
  }
}

@keyframes location-slidein {
  0% {
    height: 0;
  }
  100% {
    height: 75px;
  }
}
@-webkit-keyframes location-slideout {
  0% {
    height: 75px;
  }
  100% {
    height: 0;
  }
}
@keyframes location-slideout {
  0% {
    height: 75px;
  }
  100% {
    height: 0;
  }
}
@media (max-width: 1024px) {
  .footer__column--mobile-hidden {
    display: none;
  }
}

input[type=email],
input[type=number],
input[type=search],
input[type=text],
input[type=tel],
input[type=url],
input[type=password],
textarea,
select {
  font-size: 1.6rem;
  width: 100%;
  max-width: 100% !important;
  height: 50px;
  padding: 4px 10px 0;
  background-color: #fff;
  border: 1px solid #425563;
  border-radius: 0;
  box-shadow: none;
  box-sizing: border-box;
}

input[type=email],
input[type=number],
input[type=search],
input[type=text],
input[type=tel],
input[type=url],
input[type=password],
textarea {
  -webkit-appearance: none;
}

textarea {
  min-height: 60px;
  padding: 10px;
}

input[type=email]:focus,
input[type=number]:focus,
input[type=search]:focus,
input[type=text]:focus,
input[type=tel]:focus,
input[type=url]:focus,
input[type=password]:focus,
textarea:focus,
select:focus {
  border: 1px solid #da291c;
  outline: 0;
}

select {
  visibility: hidden;
  display: none;
  opacity: 0;
}
select::-ms-expand {
  display: none;
}

label,
legend {
  display: block;
  margin-bottom: 5px;
  font-weight: 600;
}

fieldset {
  padding: 0;
  border-width: 0;
}

input[type=checkbox],
input[type=radio] {
  display: inline;
}

label > .label-body {
  display: inline-block;
  margin-left: 5px;
  font-weight: normal;
}

.jobs-form form,
.contact-form form {
  margin: 2rem 0 0;
}
.jobs-form .gform_fields,
.contact-form .gform_fields {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.jobs-form .gform_fields li,
.contact-form .gform_fields li {
  width: 100%;
}
.jobs-form .gform_fields li:nth-child(1), .jobs-form .gform_fields li:nth-child(2), .jobs-form .gform_fields li:nth-child(3), .jobs-form .gform_fields li:nth-child(4),
.contact-form .gform_fields li:nth-child(1),
.contact-form .gform_fields li:nth-child(2),
.contact-form .gform_fields li:nth-child(3),
.contact-form .gform_fields li:nth-child(4) {
  width: 49%;
  margin: 0 0 2%;
}
@media screen and (max-width: 667px) {
  .jobs-form .gform_fields li:nth-child(1), .jobs-form .gform_fields li:nth-child(2), .jobs-form .gform_fields li:nth-child(3), .jobs-form .gform_fields li:nth-child(4),
.contact-form .gform_fields li:nth-child(1),
.contact-form .gform_fields li:nth-child(2),
.contact-form .gform_fields li:nth-child(3),
.contact-form .gform_fields li:nth-child(4) {
    width: 100%;
  }
}

.search-form {
  margin: 2rem 0 0;
  display: none;
}
.search-form input {
  width: 100%;
  left: 0;
  border-top: none;
  border-left: none;
  border-right: none;
}
.search-form input:focus {
  border-top: none;
  border-left: none;
  border-right: none;
}

form ul li {
  padding: 0 !important;
}
form ul li::before {
  display: none;
}

.header {
  width: 100%;
  background-color: #fff;
  height: 10rem;
}
@media screen and (max-width: 768px) {
  .header {
    display: none;
  }
}
.wp-menu .header .fixed {
  top: 32px;
}
.wp-menu .header .fixed .dropdown {
  top: 48px;
}
.header__top {
  height: 40px;
}
.header__top .o-container {
  display: flex;
  justify-content: flex-end;
  height: inherit;
}
.header__bottom.fixed {
  position: fixed;
  width: 100%;
  background-color: #fff;
  z-index: 900;
  left: 0;
  right: 0;
  top: 0;
  height: 80px;
}
.header--logo {
  width: 20%;
  float: left;
  margin: -1rem 0 0 0;
}
.fixed .header--logo {
  margin: 15px 0 0;
}
.header--logo img {
  width: 20rem;
  height: auto;
}

.header-mobile {
  display: none;
  width: 100%;
  height: 75px;
  padding: 15px 0;
  position: fixed;
  z-index: 9999;
  background-color: #fff;
  top: 0;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}
.header-mobile--logo {
  width: 150px;
  float: left;
  margin: 5px 0 0;
}
@media screen and (max-width: 768px) {
  .header-mobile {
    display: block;
  }
}

.hamburger {
  display: block;
  float: right;
  width: 35px;
  height: 30px;
  z-index: 2;
  margin: 20px 10px 0;
  position: relative;
}

.hamburger__inner {
  display: block;
  width: 35px;
  height: 3px;
  background: #000;
  transition: all 0.4s ease-in-out;
}
.hamburger__inner::before, .hamburger__inner::after {
  display: block;
  position: absolute;
  content: "";
  z-index: -1;
  width: 35px;
  height: 3px;
  background: #000;
  transition: all 0.4s ease-in-out;
}
.hamburger__inner::before {
  top: -9px;
}
.hamburger__inner::after {
  top: 9px;
}

.hamburger--open .hamburger__inner {
  background: none;
}
.hamburger--open .hamburger__inner::before, .hamburger--open .hamburger__inner::after {
  top: 3px;
}
.hamburger--open .hamburger__inner::before {
  transform: rotate(-45deg);
}
.hamburger--open .hamburger__inner::after {
  transform: rotate(45deg);
}

.home-header-mobile {
  display: none;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center right;
}
@media screen and (max-width: 768px) {
  .home-header-mobile {
    display: block;
  }
}

.home-header-mobile__img-wrapper {
  position: relative;
  height: 80vw;
}
.home-header-mobile__img-wrapper img {
  width: 100%;
  height: auto;
  margin: 0;
}
.home-header-mobile__img-wrapper .container {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.home-header {
  width: 100%;
  height: 35vw;
  max-height: 570px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 80% center;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 1024px) {
  .home-header {
    height: auto;
  }
}
@media screen and (max-width: 768px) {
  .home-header {
    display: none;
    height: 35vw;
  }
}
.home-header .container {
  height: 100%;
}
.home-header--light-picture {
  position: relative;
  z-index: 0;
}
.home-header--light-picture:after {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: linear-gradient(to right, rgba(0, 0, 0, 0.4) 0%, transparent 100%);
  z-index: -1;
}
.home-header-wrap {
  width: 100%;
  height: 100%;
  max-height: 570px;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .home-header-wrap {
    padding: 30px 0;
  }
  .home-header-mobile .home-header-wrap {
    padding: 0;
  }
}
.home-header__content {
  width: 100%;
}
@media screen and (max-width: 667px) {
  .home-header__content {
    width: 100%;
  }
}
.home-header__content h1 {
  font-size: calc(23.5px + 2.625vw);
  line-height: 100%;
  margin: 0;
  color: #fff;
}
@media (min-width: 1200px) {
  .home-header__content h1 {
    font-size: 55px;
  }
}
.home-header__content h1 html[lang*=en-GB] {
  font-size: 40px;
  line-height: 50px;
}
@media screen and (max-width: 1550px) {
  .home-header__content h1 {
    font-size: calc(22.5px + 1.875vw);
  }
}
@media screen and (max-width: 1550px) and (min-width: 1200px) {
  .home-header__content h1 {
    font-size: 45px;
  }
}
@media screen and (max-width: 1200px) {
  .home-header__content h1 {
    font-size: 30px;
    line-height: 40px;
  }
}
.home-header__content h1 span {
  font-family: "Volkart";
  color: #fff;
  font-weight: 300;
  border-bottom: 8px solid #da291c;
  display: inline-block;
  position: relative;
  margin: 10px 0 15px;
  padding: 0 0 10px;
}
.home-header--text-black .home-header__content h1 span {
  color: black;
}
@media screen and (max-width: 667px) {
  .home-header--text-black .home-header__content h1 span {
    color: white;
  }
}
@media screen and (max-width: 1200px) {
  .home-header__content h1 span {
    margin: 0 0 5px;
  }
}
@media screen and (max-width: 667px) {
  .home-header__content h1 span {
    padding: 0 0 5px;
    border-bottom: 4px solid #da291c;
  }
}
.home-header__content h1 span::before {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  bottom: -8px;
  left: -8px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(90deg);
  transition: all 0.25s ease-out;
}
@media screen and (max-width: 667px) {
  .home-header__content h1 span::before {
    width: 4px;
    height: 4px;
    bottom: -4px;
    left: -4px;
  }
}
.home-header__content h1 span::after {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  bottom: -8px;
  right: -8px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(-90deg);
  transition: all 0.25s ease-out;
}
@media screen and (max-width: 667px) {
  .home-header__content h1 span::after {
    width: 4px;
    height: 4px;
    bottom: -4px;
    right: -4px;
  }
}
.home-header__content h1 .bold {
  font-weight: 700;
  font-family: "Volkart-ExtraBold", sans-serif;
  margin-bottom: 0;
}
.home-header__content p {
  margin: 1em 0;
  padding: 0 0 20px;
}
@media screen and (max-width: 1200px) {
  .home-header__content p {
    font-size: 14px;
  }
}

.home-header--desktop {
  height: 35vw;
}
@media screen and (max-width: 1024px) {
  .home-header--desktop {
    height: 50vh;
  }
}
@media screen and (max-width: 768px) {
  .home-header--desktop {
    display: none;
  }
}

.home-header--mobile {
  display: none;
  height: calc(100vh - 70px);
  background-position: calc(100% + 150px) 0;
  max-height: none;
}
@media screen and (max-width: 768px) {
  .home-header--mobile {
    display: block;
  }
}

.relax {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 667px) {
  .relax {
    top: 55%;
  }
}
.relax--bg {
  width: 445px;
  height: 130px;
  background-image: url("../images/cheops-relax-text.png");
  background-size: cover;
}
@media screen and (max-width: 667px) {
  .relax--bg {
    width: 280px;
    height: 82px;
  }
}
.relax--bg::after {
  content: "";
  display: block;
  background-image: url("../images/cheops-relax.png");
  background-repeat: no-repeat;
  background-position: right 0;
  width: 1000px;
  height: 566px;
  left: -554px;
  position: absolute;
  top: -1px;
}
@media screen and (max-width: 667px) {
  .relax--bg::after {
    background-size: 63%;
    left: -719px;
  }
}
.relax--bg.relax-animation {
  opacity: 0;
  -webkit-animation: 0.5s animateRelax forwards;
          animation: 0.5s animateRelax forwards;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}
.relax--title {
  position: relative;
  z-index: 300;
  color: #fff;
  margin-top: 20px;
}
.relax--title.title-animation {
  opacity: 0;
  -webkit-animation: 1s animateTitle 1s forwards;
          animation: 1s animateTitle 1s forwards;
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}
.relax svg {
  transform: rotate(-90deg);
  margin-left: 10px;
}
.relax a {
  color: #fff;
}

.relax-scroll {
  position: absolute;
  right: 0;
  left: 0;
  margin: 0 auto;
  bottom: 3.5rem;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.relax-scroll__text {
  font-family: "Volkart";
  color: #fff !important;
  font-weight: 700;
  font-size: 35;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.relax-scroll__text:hover {
  color: #fff !important;
}
.relax-scroll__text.desktop {
  display: block;
}
@media screen and (max-width: 1024px) {
  .relax-scroll__text.desktop {
    display: none;
  }
}
.relax-scroll__text.mobile {
  display: none;
}
@media screen and (max-width: 1024px) {
  .relax-scroll__text.mobile {
    display: block;
  }
}
.relax-scroll__text svg {
  transform: rotate(-90deg);
  margin-left: 10px;
  margin-bottom: -2px;
  display: inline-block;
}

@-webkit-keyframes animateRelax {
  from {
    transform: translate(-200px, 100px);
    opacity: 0;
  }
  to {
    transform: translateY(0) translateX(0);
    opacity: 1;
  }
}

@keyframes animateRelax {
  from {
    transform: translate(-200px, 100px);
    opacity: 0;
  }
  to {
    transform: translateY(0) translateX(0);
    opacity: 1;
  }
}
@-webkit-keyframes animateTitle {
  from {
    transform: translateY(20%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes animateTitle {
  from {
    transform: translateY(20%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
.c-home-banner {
  background-color: black;
  color: white;
  padding: 1em 0;
  text-align: center;
}

.c-home-banner__text {
  display: block;
  font-weight: 700;
  line-height: 1.5;
  font-size: calc(20.2px + 0.15vw);
}
@media (min-width: 1200px) {
  .c-home-banner__text {
    font-size: 22px;
  }
}

.c-home-banner__link {
  display: block;
  margin-top: 1em;
  font-size: 18px;
}
.c-home-banner__link svg {
  width: 10px;
  vertical-align: middle;
}

.insights {
  width: 100%;
  padding: 6rem 0;
  position: relative;
}
@media screen and (max-width: 768px) {
  .insights {
    padding: 20px 0 40px;
  }
}
.insights-wrap {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (min-width: 1025px) {
  .insights-wrap {
    justify-content: flex-start;
  }
}
@media screen and (min-width: 1025px) {
  .insights-wrap article:nth-child(3n+5) {
    margin-right: 0;
  }
}
.insights__item {
  width: 31.6666666667%;
  margin: 0 0 3% 0;
}
@media screen and (min-width: 1025px) {
  .insights__item {
    margin: 0 2.5% 3% 0;
  }
}
@media screen and (max-width: 1024px) {
  .insights__item {
    width: 47.5%;
    margin: 0 0 4% 0;
  }
}
@media screen and (max-width: 768px) {
  .insights__item {
    width: 100%;
  }
}
.insights__item.large {
  width: 65.8333333333%;
}
@media screen and (max-width: 1024px) {
  .insights__item.large {
    width: 100%;
  }
}
@media screen and (min-width: 1025px) {
  .insights__item.large + .insights__item {
    margin-right: 0;
  }
}
.insights__special {
  background-color: #da291c;
  min-height: 360px;
  width: 31.6666666667%;
  margin: 0 0 3% 0;
  padding: 20px;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 1025px) {
  .insights__special {
    margin: 0 2.5% 3% 0;
  }
}
.insights__special.black {
  background-color: #000;
}
@media screen and (max-width: 1024px) {
  .insights__special {
    width: 47.5%;
    margin: 0 0 4% 0;
  }
}
@media screen and (max-width: 768px) {
  .insights__special {
    width: 100%;
  }
}
.insights__special h4 {
  font-weight: 300;
  font-size: 35px;
  line-height: 40px;
  color: #fff;
}
.insights__special p {
  color: #fff;
  margin: 0 0 20px;
  display: block;
}
.insights__content {
  position: absolute;
  width: 90%;
  min-height: 140px;
  background-color: #fff;
  left: 0;
  bottom: 0;
  padding: 20px 20px 0 0;
}
.large .insights__content {
  width: 48%;
}
@media screen and (max-width: 768px) {
  .large .insights__content {
    width: 90%;
  }
}
.insights__content span {
  font-weight: 700;
  font-size: 12px;
  color: #da291c;
  text-transform: uppercase;
}
.insights--more {
  text-align: center;
  width: 100%;
  margin: 2rem 0 0;
}
.insights--more .c-btn--more {
  width: 100%;
  justify-content: center;
}
.insights h4 {
  margin: 0 0 3rem;
}

.insights-filter {
  width: 100%;
  padding: 40px 0 0;
}
@media screen and (max-width: 1024px) {
  .insights-filter {
    padding: 20px 0 0;
  }
}
.insights-filter ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
}
@media screen and (max-width: 1200px) {
  .insights-filter ul {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .insights-filter ul {
    display: none;
    padding: 20px 0 0;
  }
}
.insights-filter ul.all li:first-child {
  border-bottom: 5px solid #da291c;
}
@media screen and (max-width: 768px) {
  .insights-filter ul.all li:first-child {
    border-bottom: 5px solid transparent;
  }
}
.insights-filter ul.all li:first-child a {
  color: #da291c;
}
.insights-filter ul.all li:first-child::before {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  bottom: -5px;
  left: -5px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(90deg);
  transition: all 0.25s ease-out;
}
@media screen and (max-width: 768px) {
  .insights-filter ul.all li:first-child::before {
    display: none;
  }
}
.insights-filter ul.all li:first-child::after {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  bottom: -5px;
  right: -5px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(-90deg);
  transition: all 0.25s ease-out;
}
@media screen and (max-width: 768px) {
  .insights-filter ul.all li:first-child::after {
    display: none;
  }
}
.insights-filter ul li {
  display: inline-block;
  position: relative;
  border-bottom: 5px solid transparent;
  padding: 0 0 1rem;
}
@media screen and (max-width: 1200px) {
  .insights-filter ul li {
    width: 22%;
    text-align: left;
    margin: 0 2% 2% 0;
  }
}
@media screen and (max-width: 768px) {
  .insights-filter ul li {
    width: 100%;
  }
}
.insights-filter ul li.current-cat, .insights-filter ul li:hover {
  border-bottom: 5px solid #da291c;
}
@media screen and (max-width: 768px) {
  .insights-filter ul li.current-cat, .insights-filter ul li:hover {
    border-bottom: 5px solid transparent;
  }
}
.insights-filter ul li.current-cat a, .insights-filter ul li:hover a {
  color: #da291c;
}
.insights-filter ul li.current-cat::before, .insights-filter ul li:hover::before {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  bottom: -5px;
  left: -5px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(90deg);
  transition: all 0.25s ease-out;
}
@media screen and (max-width: 768px) {
  .insights-filter ul li.current-cat::before, .insights-filter ul li:hover::before {
    display: none;
  }
}
.insights-filter ul li.current-cat::after, .insights-filter ul li:hover::after {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  bottom: -5px;
  right: -5px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(-90deg);
  transition: all 0.25s ease-out;
}
@media screen and (max-width: 768px) {
  .insights-filter ul li.current-cat::after, .insights-filter ul li:hover::after {
    display: none;
  }
}
.insights-filter ul li:last-child {
  border-bottom: none;
  font-size: 2.5rem;
}
@media screen and (max-width: 1024px) {
  .insights-filter ul li:last-child {
    display: none;
  }
}
.insights-filter ul li:last-child::after, .insights-filter ul li:last-child::before {
  display: none;
}
.insights-filter ul li a {
  color: #000;
  font-size: 18px;
  font-weight: 800;
}
.insights-filter button {
  background-color: transparent;
  border: none;
  outline: none;
  line-height: 1;
  text-align: right;
  color: #000;
}

.mobile-dropdown {
  position: relative;
  padding: 5px 0;
  border-bottom: 2px solid #da291c;
  display: none;
}
@media screen and (max-width: 768px) {
  .mobile-dropdown {
    display: block;
  }
}
.mobile-dropdown.open span::after {
  transform: rotate(180deg);
}
.mobile-dropdown span {
  color: #da291c;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .mobile-dropdown span::after {
    content: "";
    position: absolute;
    background: url(../images/cheops-arrow-down.svg) no-repeat;
    width: 10px;
    height: 10px;
    margin-left: 0;
    border: none;
    top: calc(50% - 6px);
    right: 10px;
    z-index: 500;
  }
}

.insights__featured_image {
  width: 100%;
  background-size: cover;
  display: block;
  min-height: 360px;
  position: relative;
  color: #000;
}
.insights__featured_image h5:hover {
  color: #da291c;
}

@media screen and (max-width: 667px) {
  .insights__featured_image--desktop {
    display: none;
  }
}

.insights__featured_image--mobile {
  display: none;
}
@media screen and (max-width: 667px) {
  .insights__featured_image--mobile {
    display: block;
  }
}

.jobs {
  padding: 80px 0;
  background-color: #f1f3f4;
}
@media screen and (max-width: 1024px) {
  .jobs {
    padding: 40px 0;
  }
}
.jobs h3 {
  color: #000;
}
.jobs .container {
  position: relative;
}

.jobs__wrapper {
  display: flex;
  flex-wrap: wrap;
  margin: 2rem 0 0;
}
@media screen and (max-width: 1024px) {
  .jobs__wrapper {
    justify-content: flex-start;
  }
}

.jobs__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.jobs__header h3 {
  margin: 0;
}

.jobs__filter {
  display: flex;
  align-items: center;
  font-weight: 700;
  color: #000;
}
@media screen and (max-width: 667px) {
  .jobs__filter {
    width: 100%;
    margin: 2rem 0 0;
  }
}
.jobs__filter span {
  flex: 0 0 auto;
}
.jobs__filter .select__wrapper {
  margin-left: 1em;
}

.jobs__item {
  width: 23%;
  background-color: #fff;
  padding: 30px 20px;
  outline: none;
  margin: 0 1.33% 2%;
  color: #000;
}
@media screen and (min-width: 1025px) {
  .jobs__item:first-child {
    margin-left: 0;
  }
  .jobs__item:nth-child(4n) {
    margin-right: 0;
  }
  .jobs__item:nth-child(4n+1) {
    margin-left: 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .jobs__item {
    width: 31.5%;
  }
  .jobs__item:first-child {
    margin-left: 0;
  }
  .jobs__item:nth-child(3n) {
    margin-right: 0;
  }
  .jobs__item:nth-child(3n+1) {
    margin-left: 0;
  }
}
@media screen and (min-width: 668px) and (max-width: 768px) {
  .jobs__item {
    width: 48.5%;
  }
  .jobs__item:first-child {
    margin-left: 0;
  }
  .jobs__item:nth-child(2n) {
    margin-right: 0;
  }
  .jobs__item:nth-child(2n+1) {
    margin-left: 0;
  }
}
@media screen and (max-width: 667px) {
  .jobs__item {
    width: 100%;
    margin: 0 0 2rem;
  }
}
.jobs__item:hover h4 {
  color: #da291c;
}
.jobs__item h4 {
  min-height: 100px;
}
@media screen and (max-width: 667px) {
  .jobs__item h4 {
    min-height: 5rem;
  }
}

.jobs__amount {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #000;
}
.jobs__amount p {
  padding: 0;
  margin: 0;
  font-size: 1.6rem;
}
.jobs__amount span {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  box-shadow: -7.5px 0 #da291c;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  color: #da291c;
}

.filter-loading {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(241, 243, 244, 0.9);
  display: flex;
  justify-content: center;
  align-items: center;
}
.filter-loading svg {
  width: 100px;
  height: 100px;
}
.filter-loading path {
  fill: #da291c;
}

.filter-loading--hidden {
  display: none;
}

.jobs-slider-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin: 2rem 0 0;
}
.testimonial-page .jobs-slider-wrap {
  border-bottom: 1px solid #dde1e4;
  padding: 2rem 0 4rem;
}
.jobs-slider__text {
  width: 40%;
  padding: 0 0 0 6rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .jobs-slider__text {
    width: 100%;
  }
}
@media screen and (max-width: 667px) {
  .jobs-slider__text {
    padding: 0;
  }
}
.jobs-slider__text::before {
  content: "";
  background-image: url("../images/icon-quote.svg");
  width: 4rem;
  height: 4rem;
  background-size: cover;
  position: absolute;
  left: 0;
  top: 0;
}
@media screen and (max-width: 667px) {
  .jobs-slider__text::before {
    display: none;
  }
}
.jobs-slider__video {
  width: 55%;
}
@media screen and (max-width: 768px) {
  .jobs-slider__video {
    width: 100%;
    margin: 2rem 0 0;
  }
}

.jobs-slider .slick-dots {
  margin: 3rem 0 3rem 45%;
  padding: 0;
  display: flex;
  justify-content: center;
  width: 55%;
}
@media screen and (max-width: 768px) {
  .jobs-slider .slick-dots {
    width: 100%;
    margin: 2rem 0 0;
  }
}
.jobs-slider .slick-dots li {
  list-style-type: none;
}
.jobs-slider .slick-dots li:not(:last-child) {
  margin-right: 0.5rem;
}
.jobs-slider .slick-dots li.slick-active button {
  background-color: #da291c;
}
.jobs-slider .slick-dots button {
  display: block;
  border: 2px solid #da291c;
  border-radius: 50%;
  font-size: 0;
  width: 2rem;
  height: 2rem;
}

.mega-menu {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
  display: flex;
  justify-content: flex-end;
}
.fixed .mega-menu {
  margin: 1.5rem 0 0 !important;
}
.mega-menu > li {
  font-size: 2rem;
  font-weight: 900;
  position: static;
}
.mega-menu > li:nth-child(1):hover > a, .mega-menu > li:nth-child(2):hover > a {
  display: block;
  position: relative;
  z-index: 950;
  border-bottom: 5px solid #da291c;
}
.mega-menu > li:nth-child(1):hover > a::before, .mega-menu > li:nth-child(2):hover > a::before {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  bottom: -5px;
  left: -5px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 0);
  transform: rotate(90deg);
}
.mega-menu > li:nth-child(1):hover > a::after, .mega-menu > li:nth-child(2):hover > a::after {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  bottom: -5px;
  right: -5px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 0);
  transform: rotate(-90deg);
}
.fixed .mega-menu > li:nth-child(1):hover > a, .fixed .mega-menu > li:nth-child(2):hover > a {
  padding: 2rem;
}
.mega-menu > li:hover .dropdown {
  display: flex;
  flex-wrap: wrap;
  -webkit-animation: showDropdown 0.5s forwards;
          animation: showDropdown 0.5s forwards;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}
.mega-menu > li:hover .mega-sub-menu {
  display: flex;
}
.mega-menu > li:hover > a {
  color: #da291c;
}
.mega-menu > li a {
  color: #000;
  display: block;
  padding: 2rem;
}
.mega-menu > li a::before, .mega-menu > li a::after {
  content: "";
}
.mega-menu-title {
  font-weight: 800;
  line-height: 1.4;
  font-size: 1.6rem;
  text-transform: none;
  color: #000;
  display: block;
}
.mega-menu-title:hover {
  color: #da291c;
}
.mega-menu-description {
  font-size: 1.4rem;
  color: #425563;
  font-weight: 400;
  font-style: normal !important;
}
.mega-menu-link::after {
  margin: 0 !important;
}

.dropdown {
  border-top: 5px solid #dde1e4;
  background-color: #fff;
  position: absolute;
  left: 0 !important;
  right: 0 !important;
  top: 10rem;
  padding: 0 !important;
  display: none;
  min-height: 640px !important;
  z-index: 900;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
  opacity: 0;
}
.wp-menu .dropdown {
  margin: 32px 0 0;
}
.fixed .dropdown {
  top: 75px;
}

.mega-sub-menu {
  margin: 0 auto;
  width: 1140px;
  list-style: none;
  padding: 60px 0;
  display: none;
  flex-wrap: wrap;
}
.mega-sub-menu .mega-menu-link::before {
  display: block;
  content: "";
  width: 60px !important;
  height: 60px !important;
  background-size: 60px 60px !important;
  background-repeat: no-repeat;
}
.mega-sub-menu li {
  width: 25%;
  padding: 0 20px 0 0;
}
.mega-sub-menu li:first-child {
  width: 100%;
}
.mega-sub-menu li .textwidget {
  font-weight: 400;
}
.mega-sub-menu li a {
  padding: 0;
  display: flex;
  flex-direction: column;
}
.mega-sub-menu li a::before {
  clear: both !important;
  float: left !important;
  display: block !important;
  width: 100% !important;
  margin-bottom: 10px !important;
  min-height: 50px !important;
}

.mega-block-title {
  font-family: "Volkart" !important;
  font-weight: 800 !important;
  font-size: 28px !important;
  color: #000 !important;
  text-transform: none !important;
}

.mega-sticky {
  position: static !important;
  margin-top: 0 !important;
}

.mega-menu-toggle {
  display: none;
}

#mega-menu-item-846 > a.mega-menu-link:before,
#mega-menu-item-837 > a.mega-menu-link:before {
  background-image: url("../images/icons/arrow.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-847 > a.mega-menu-link:before,
#mega-menu-item-838 > a.mega-menu-link:before {
  background-image: url("../images/icons/clock.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-849 > a.mega-menu-link:before,
#mega-menu-item-839 > a.mega-menu-link:before {
  background-image: url("../images/icons/settings.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-848 > a.mega-menu-link:before,
#mega-menu-item-840 > a.mega-menu-link:before {
  background-image: url("../images/icons/it.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-850 > a.mega-menu-link:before,
#mega-menu-item-841 > a.mega-menu-link:before {
  background-image: url("../images/icons/shield.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-851 > a.mega-menu-link:before,
#mega-menu-item-842 > a.mega-menu-link:before {
  background-image: url("../images/icons/infini.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-852 > a.mega-menu-link:before,
#mega-menu-item-843 > a.mega-menu-link:before {
  background-image: url("../images/icons/growth.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-853 > a.mega-menu-link:before,
#mega-menu-item-844 > a.mega-menu-link:before {
  background-image: url("../images/icons/download.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-763 > a.mega-menu-link:before,
#mega-menu-item-740 > a.mega-menu-link:before {
  background-image: url("../images/icons/managed.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-760 > a.mega-menu-link:before,
#mega-menu-item-739 > a.mega-menu-link:before {
  background-image: url("../images/icons/star.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-759 > a.mega-menu-link:before,
#mega-menu-item-738 > a.mega-menu-link:before {
  background-image: url("../images/icons/cloud.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-761 > a.mega-menu-link:before,
#mega-menu-item-737 > a.mega-menu-link:before {
  background-image: url("../images/icons/infra.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-764 > a.mega-menu-link:before,
#mega-menu-item-736 > a.mega-menu-link:before {
  background-image: url("../images/icons/mobile.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-765 > a.mega-menu-link:before,
#mega-menu-item-735 > a.mega-menu-link:before {
  background-image: url("../images/icons/colaboration.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-762 > a.mega-menu-link:before,
#mega-menu-item-734 > a.mega-menu-link:before {
  background-image: url("../images/icons/licence.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-766 > a.mega-menu-link:before,
#mega-menu-item-733 > a.mega-menu-link:before {
  background-image: url("../images/icons/securty.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-8971 > a.mega-menu-link:before,
#mega-menu-item-8970 > a.mega-menu-link:before {
  background-image: url("../images/icons/gdpr.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-14812 > a.mega-menu-link:before,
#mega-menu-item-14870 > a.mega-menu-link:before {
  background-image: url("../images/icons/strategy.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-14813 > a.mega-menu-link:before,
#mega-menu-item-14869 > a.mega-menu-link:before {
  background-image: url("../images/icons/colaboration.svg") !important;
  transform: translateX(-8px);
}

#mega-menu-item-14814 > a.mega-menu-link:before,
#mega-menu-item-14871 > a.mega-menu-link:before {
  background-image: url("../images/icons/service.svg") !important;
  transform: translateX(-8px);
}

@-webkit-keyframes showDropdown {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes showDropdown {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.subnav {
  display: flex;
  justify-content: flex-end;
}
.subnav > ul {
  display: flex;
  justify-content: flex-end;
  list-style: none;
  margin: 1.5rem 0 0;
}
.subnav > ul > li {
  padding: 0 1rem;
  font-weight: 500;
  position: relative;
  display: flex;
  align-items: center;
}
.subnav > ul > li a {
  color: #000;
  text-decoration: none;
  font-size: 1.5rem;
}
.subnav > ul > li a:hover {
  color: #da291c;
}
.subnav > ul > li span {
  background-color: #da291c;
  color: #fff;
  font-size: 10px;
  margin-left: 5px;
  margin-bottom: 4px;
  border-radius: 50%;
  padding: 4px;
}

.fixed .mainnav {
  width: 80%;
  float: right;
}

.mobilenav {
  position: absolute;
  background-color: #fff;
  left: 0;
  right: 0;
  top: 75px;
  display: none;
}
.mobilenav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.mobilenav ul > li {
  width: 100%;
  font-size: 1.8rem;
}
.mobilenav ul > li.menu-item-has-children > a {
  pointer-events: none;
  position: relative;
}
.mobilenav ul > li.menu-item-has-children > a::after {
  content: "";
  background-image: url("../images/cheops-arrow-down.svg");
  background-repeat: no-repeat;
  position: absolute;
  top: 1.8rem;
  right: 2rem;
  display: block;
  width: 0.8rem;
  height: 0.8rem;
}
.mobilenav ul > li.active {
  background-color: #dde1e4;
}
.mobilenav ul > li.active a::after {
  transform: rotate(180deg);
}
.mobilenav ul > li:last-child {
  padding: 0;
}
.mobilenav ul > li:last-child a {
  background-color: #dde1e4;
}
.mobilenav ul > li a {
  display: block;
  color: #000;
  font-family: "Volkart";
  font-weight: 700;
  padding: 15px 20px;
  margin: 0;
  width: 100%;
}
.mobilenav ul > li.add-number {
  position: relative;
}
.mobilenav ul > li span {
  display: inline-block;
  width: 24px;
  height: 24px;
  line-height: 24px;
  text-align: center;
  background-color: #da291c;
  color: #fff;
  font-size: 12px;
  border-radius: 50%;
  vertical-align: middle;
  margin-left: 1em;
}
.mobilenav ul li ul {
  display: none;
  padding: 0 0 1rem;
}
.mobilenav ul li ul.open {
  display: block;
  background-color: #dde1e4;
}
.mobilenav ul li ul li {
  font-size: 1.4rem;
}
.mobilenav ul li ul li a {
  padding: 10px 30px;
}

.copyright-navigation ul {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 667px) {
  .copyright-navigation ul {
    margin: 1rem 0;
    padding: 0;
  }
}
.copyright-navigation ul li {
  padding: 0 10px;
}
@media screen and (max-width: 667px) {
  .copyright-navigation ul li {
    width: 100%;
    padding: 1rem 0 0;
  }
}

.mega-current_page_item > a,
.mega-current_page_ancestor > a,
.current_page_ancestor > a,
.current-menu-item > a {
  color: #da291c !important;
}

.newsletter {
  padding: 6rem 0;
  background-color: #da291c;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .newsletter {
    padding: 3rem 0;
  }
}
.newsletter-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.newsletter-wrap--center {
  align-items: center;
}
.newsletter__left {
  width: 40%;
}
@media screen and (max-width: 768px) {
  .newsletter__left {
    width: 100%;
  }
}
.newsletter__right {
  width: 50%;
  padding: 0;
}
.newsletter-wrap--center .newsletter__right {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .newsletter-wrap--center .newsletter__right {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .newsletter__right {
    width: 100%;
  }
}
.newsletter .gform_button {
  background-color: #fff !important;
  color: #000 !important;
  box-shadow: 8px 8px #000;
  margin: 0;
}
.newsletter .gform_button:hover, .newsletter .gform_button:active {
  box-shadow: 1px 1px #000;
  transform: translate(4px, 4px);
  background-color: #fff !important;
  color: #000 !important;
}
.newsletter .gform_button::before {
  background-image: linear-gradient(315deg, transparent 50%, #000 50%);
}
.newsletter .gform_button::after {
  background-image: linear-gradient(315deg, transparent 50%, #000 50%);
}
.newsletter .hidden_sub_label {
  display: none;
}
.newsletter .validation_message,
.newsletter .validation_error {
  color: #fff;
}
.newsletter input[type=text],
.newsletter input[type=email],
.newsletter .checkbox {
  background-color: transparent !important;
  border-color: #fff !important;
  color: #fff !important;
}
.newsletter input[type=text]::-webkit-input-placeholder, .newsletter input[type=email]::-webkit-input-placeholder, .newsletter .checkbox::-webkit-input-placeholder {
  color: #fff;
}
.newsletter input[type=text]::-moz-placeholder, .newsletter input[type=email]::-moz-placeholder, .newsletter .checkbox::-moz-placeholder {
  color: #fff;
}
.newsletter input[type=text]:-ms-input-placeholder, .newsletter input[type=email]:-ms-input-placeholder, .newsletter .checkbox:-ms-input-placeholder {
  color: #fff;
}
.newsletter input[type=text]::-ms-input-placeholder, .newsletter input[type=email]::-ms-input-placeholder, .newsletter .checkbox::-ms-input-placeholder {
  color: #fff;
}
.newsletter input[type=text]::placeholder,
.newsletter input[type=email]::placeholder,
.newsletter .checkbox::placeholder {
  color: #fff;
}
.newsletter ul {
  margin: 0;
}
.newsletter ul li:nth-child(1), .newsletter ul li:nth-child(2), .newsletter ul li:nth-child(3) {
  width: 100% !important;
}
.newsletter h3, .newsletter h4, .newsletter h5 {
  color: #fff;
}

@media screen and (max-width: 768px) {
  .newsletter-form {
    margin: 2rem 0 0;
  }
}
.newsletter-form .gform_fields {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.newsletter-form .gform_fields li {
  width: 100%;
}
.newsletter-form .gform_fields li:nth-child(1), .newsletter-form .gform_fields li:nth-child(2) {
  width: 49%;
  margin: 0 0 2%;
}
@media screen and (max-width: 667px) {
  .newsletter-form .gform_fields li:nth-child(1), .newsletter-form .gform_fields li:nth-child(2) {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .c-popup-news {
    display: none;
  }
}
.c-popup-news__preview {
  background-color: #da291c;
  position: fixed;
  width: 22rem;
  z-index: 900;
  right: 0;
  bottom: 4rem;
  color: #fff;
  display: flex;
  align-items: center;
  text-transform: uppercase;
  padding: 1rem 1rem;
  cursor: pointer;
}
.c-popup-news__preview.hide {
  transform: translateX(16rem);
}
.c-popup-news__preview.slide-in {
  -webkit-animation: 1s slideOut forwards;
          animation: 1s slideOut forwards;
}
.c-popup-news__preview.slide-out {
  -webkit-animation: 1s slideIn forwards;
          animation: 1s slideIn forwards;
}
.c-popup-news__preview span {
  padding: 0.2rem 0 0;
}
.c-popup-news__preview svg {
  width: 4rem;
  height: 4rem;
  display: inline-block;
  fill: #fff;
  margin-right: 2rem;
}
.c-popup-news__preview i {
  margin: 0 1rem 0 0;
  padding: 1.2rem;
}
.c-popup-news__form {
  width: 40rem;
  position: fixed;
  z-index: 900;
  right: 0;
  bottom: 12rem;
  background-color: #fff;
  border: 1px solid #dde1e4;
}
.c-popup-news__form.hide {
  transform: translateX(40rem);
}
.c-popup-news__form.show {
  -webkit-animation: 1s slideOutBig forwards;
          animation: 1s slideOutBig forwards;
}
.c-popup-news__form.leave {
  -webkit-animation: 1s slideInBig forwards;
          animation: 1s slideInBig forwards;
}
.c-popup-news__form--head {
  background-color: #da291c;
  color: #fff;
  display: flex;
  justify-content: space-between;
  padding: 1.5rem 2rem;
}
.c-popup-news__form--head i {
  cursor: pointer;
}
.c-popup-news__form--content {
  padding: 2rem;
}
.c-popup-news__form--content input {
  width: 100% !important;
}

@-webkit-keyframes slideOut {
  from {
    transform: translateX(16rem);
  }
  to {
    transform: translateX(0);
  }
}

@keyframes slideOut {
  from {
    transform: translateX(16rem);
  }
  to {
    transform: translateX(0);
  }
}
@-webkit-keyframes slideIn {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(16rem);
  }
}
@keyframes slideIn {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(16rem);
  }
}
@-webkit-keyframes slideOutBig {
  from {
    transform: translateX(40rem);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes slideOutBig {
  from {
    transform: translateX(40rem);
  }
  to {
    transform: translateX(0);
  }
}
@-webkit-keyframes slideInBig {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(40rem);
  }
}
@keyframes slideInBig {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(40rem);
  }
}
#livechat-compact-container {
  display: none;
  right: 6rem !important;
}

.livechat-popup-low {
  position: fixed;
  right: 0;
  bottom: 0;
}
.livechat-popup-low__button {
  transform: translateX(12rem);
}
.livechat-popup-low__button.icon {
  -webkit-animation: slide-out-half 1s forwards;
          animation: slide-out-half 1s forwards;
}
.livechat-popup-low__button.active {
  -webkit-animation: slide-in 1s forwards;
          animation: slide-in 1s forwards;
}
.livechat-popup-low__button span {
  color: #fff;
  text-transform: uppercase;
}
.livechat-popup-low.popup-open .livechat-popup-low__button {
  width: 35rem;
}
.livechat-popup-low.popup-open .livechat-popup-low__button span {
  color: #fff;
  text-transform: uppercase;
}
.livechat-popup-low.popup-open .livechat-popup-low-outer .livechat-popup-low__button {
  display: none;
}
@media screen and (max-width: 700px) {
  .livechat-popup-low {
    display: none;
  }
}
.livechat-popup-low .livechat-popup-low-outer .livechat-popup-low__button {
  display: flex;
  align-items: center;
  padding: 1rem 0;
  color: #fff;
  background-color: #da291c;
  font-size: 15px;
  text-transform: uppercase;
  font-weight: bold;
  cursor: pointer;
  width: 12rem;
  position: fixed;
  right: 0;
  bottom: 4rem;
}
.livechat-popup-low .livechat-popup-low-outer .livechat-popup-low__button div {
  display: flex;
  align-items: center;
}
.livechat-popup-low .livechat-popup-low-outer .livechat-popup-low__button span {
  color: #fff;
  padding: 5px 0 0 5px;
}
.livechat-popup-low .livechat-popup-low-outer .livechat-popup-low__button i {
  color: #fff;
  font-size: 24px;
  padding: 0 1.2rem;
}

.quote {
  width: 100%;
  background-color: #f1f3f4;
  padding: 4rem 0;
}
@media screen and (max-width: 768px) {
  .quote {
    padding: 2rem 0;
  }
}

.quote-wrap {
  display: flex;
  flex-wrap: wrap;
  width: 80%;
  margin: 0 auto;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .quote-wrap {
    width: 100%;
  }
}

.quote__text {
  width: 60%;
  padding: 0 4rem;
}
@media screen and (max-width: 768px) {
  .quote__text {
    width: 100%;
    padding: 0;
  }
}
.quote__text blockquote {
  margin: 0;
  padding: 0;
  font-size: 22px;
  font-weight: 700;
  quotes: "“" "”" "‘" "’";
}
.quote__text blockquote:before {
  content: open-quote;
}
.quote__text blockquote:after {
  content: close-quote;
}
.quote__text small {
  color: #da291c;
  font-weight: 700;
  font-size: 16px;
  text-transform: uppercase;
  font-family: Volkart-Bold;
}

.quote__img {
  width: 40%;
}
@media screen and (max-width: 768px) {
  .quote__img {
    width: 100%;
    margin: 0 0 2rem;
  }
}
.quote__img img {
  width: 100%;
  height: auto;
  margin: 0;
}

.quote__url {
  margin-top: 1em;
  display: block;
}

.quote__title {
  width: 80%;
  margin: 0 auto 1em auto;
}

.ready {
  padding: 4rem 0;
  width: 100%;
  background-color: #dde1e4;
}
.ready-total-wrap {
  width: 80%;
  margin: 0 auto;
}
.ready-wrap {
  width: 100%;
  flex-wrap: wrap;
  display: flex;
  align-items: center;
}
.ready__profile {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 50%;
  margin: 2rem 0 0;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .ready__profile {
    width: 100%;
    margin: 2rem 0;
  }
}
.ready__profile strong {
  font-family: "Volkart";
  font-weight: 700;
  color: #000;
}
.ready__profile--img {
  width: 8rem;
  height: 8rem;
  background-color: #dde1e4;
  border-radius: 50%;
  margin: 0 2rem 0 0;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .ready__profile--img {
    display: block;
    margin: 0 0 1rem;
  }
}
.ready__profile--img img {
  width: 100%;
  height: auto;
}
.ready__text {
  width: 50%;
  margin: 2rem 0 0;
}
@media screen and (max-width: 768px) {
  .ready__text {
    width: 100%;
  }
}
.ready__text p {
  font-size: 22px;
  font-weight: 700;
}
.ready__share {
  overflow: hidden;
}
.ready__share span {
  display: block;
  margin: 0 0 1rem;
}
.ready__share a {
  display: block;
  position: relative;
  float: left;
  width: 25px;
  height: 25px;
  margin-right: 1rem;
}
.ready__share a:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-size: 100%;
}
.ready__share__linkedin:after {
  background: url("../images/linkedin.svg") no-repeat;
}
.ready__share__facebook:after {
  background: url("../images/facebook.svg") no-repeat;
}
.ready__share__twitter:after {
  background: url("../images/twitter.svg") no-repeat;
}

.c-slide__text p {
  margin-top: 0;
}

.slick-arrow {
  background-color: rgba(255, 255, 255, 0.8);
  border: none;
  width: 40px;
  height: 40px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  border-radius: 50%;
  text-indent: -9999px;
  transition: background 0.3s ease-in;
}
.slick-arrow:before {
  content: "";
  background: url(../images/sprites/src/icon-arrow.svg) no-repeat;
  background-size: 12px;
  width: 12px;
  height: 24px;
  position: absolute;
  left: 16px;
  top: 8px;
}
.slick-arrow:hover {
  background-color: white;
}

.slick-prev {
  left: 20px;
}
.slick-prev:before {
  transform: scale(-1);
  left: 12px;
}

.slick-next {
  right: 20px;
}

.teaser {
  padding: 0 0 80px;
  overflow: hidden;
}
.teaser__item {
  width: 30.33%;
  margin: 0 1.5%;
  float: left;
  position: relative;
  background-size: cover;
  height: 400px;
  background-position: center center;
  color: #000;
}
@media screen and (max-width: 1024px) {
  .teaser__item {
    width: 100%;
    margin: 0 0 20px;
  }
}
.teaser__item--text {
  width: 90%;
  position: absolute;
  background-color: #fff;
  bottom: 0;
  left: 0;
  padding: 20px 20px 20px 5px;
  height: 180px;
}
@media screen and (max-width: 1024px) {
  .teaser__item--text {
    height: auto;
    width: 100%;
  }
}
.teaser__item--text h4 {
  font-size: 60;
  font-weight: 300;
  margin: 0 0 4rem;
}
@media screen and (max-width: 1024px) {
  .teaser__item--text h4 {
    min-height: auto;
    margin: 0 0 2rem;
  }
}
.teaser__item--text h4:hover {
  color: #000;
}
.teaser__item--function {
  font-weight: 700;
  color: #425563;
  margin: 0 0 2rem;
  display: block;
}
.teaser__item small {
  color: #da291c;
  font-size: 12px;
  text-transform: uppercase;
  margin: 0 0 5px;
  display: block;
}

.teaser__item--no-image {
  display: block;
  width: 100%;
  float: none;
  height: auto;
  margin: 0;
}
.teaser__item--no-image .teaser__item--text {
  position: relative;
  padding: 0;
  height: auto;
}

.topper {
  width: 100%;
  height: 35vw;
  max-height: 570px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .topper {
    height: auto;
    max-height: none;
  }
}
.topper.desktop {
  display: none;
}
@media screen and (min-width: 768px) {
  .topper.desktop {
    display: inline-block;
  }
}
.topper.mobile {
  height: auto;
  display: none;
}
.topper.mobile .topper--image {
  height: 100%;
}
@media screen and (max-width: 767px) {
  .topper.mobile {
    display: inline-block;
  }
  .topper.mobile img {
    width: 100%;
    height: auto;
  }
}
.topper.gray {
  background-color: #f1f3f4;
}
.topper.small {
  height: auto;
  padding: 60px 0;
}
.topper.white {
  color: #fff;
}
@media screen and (max-width: 768px) {
  .topper.white {
    color: #000;
  }
}
.topper.white h1 {
  color: #fff;
}
@media screen and (max-width: 768px) {
  .topper.white h1 {
    color: #000;
  }
}
.topper-wrap {
  width: 100%;
  position: relative;
  z-index: 200;
}
.topper-content-wrap {
  width: 100%;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .topper__breadcrumbs {
    display: none;
  }
}
.topper__title {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  width: 70%;
  margin: 0 0 2rem;
}
@media screen and (max-width: 768px) {
  .topper__title {
    width: 100%;
    margin: 0;
  }
}
.topper__title .function {
  display: block;
  width: 100%;
  font-weight: 900;
}
.topper__title h1 {
  margin: 0 2rem 0 0;
  padding: 0;
  width: auto;
}
@media screen and (max-width: 768px) {
  .topper__title h1 {
    margin: 0 0 1rem;
  }
}
.topper__title--white {
  color: white !important;
}
@media screen and (max-width: 768px) {
  .topper__title--white {
    color: black !important;
  }
}
.topper__content {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 600;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
}
.topper__content h1, .topper__content h2 {
  font-size: 60px;
  font-weight: 300;
}
@media screen and (max-width: 1200px) {
  .topper__content h1 {
    font-size: 45px;
    line-height: 45px;
  }
  .topper__content h2 {
    font-size: 40px;
    line-height: 45px;
  }
}
@media screen and (max-width: 768px) {
  .topper__content {
    position: relative;
    padding: 2rem 0;
  }
  .topper__content h1 {
    font-size: 35px;
    line-height: 35px;
    width: 100%;
  }
  .topper__content h2 {
    font-size: 30px;
    line-height: 35px;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .topper__content--absolute {
    position: absolute;
  }
}
@media screen and (max-width: 768px) {
  .topper__content--absolute {
    position: relative;
  }
}
.topper__info {
  width: 50%;
  padding: 0 5px 0 0;
}
.topper__icon {
  width: 50%;
  float: right;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .topper__icon {
    display: none;
  }
}
.topper--image, .topper--image--desktop, .topper--image--mobile {
  width: 100%;
  height: 35vw;
  max-height: 570px;
  background-position: 50%;
  background-size: cover;
  background-repeat: no-repeat;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 768px) {
  .topper--image, .topper--image--desktop, .topper--image--mobile {
    height: 32vw;
  }
}
@media screen and (max-width: 768px) {
  .topper-testimonial .topper--image, .topper--jobs .topper--image, .topper-testimonial .topper--image--desktop, .topper--jobs .topper--image--desktop, .topper-testimonial .topper--image--mobile, .topper--jobs .topper--image--mobile {
    background-position: 80%;
  }
}
.topper--image--desktop {
  display: none;
}
@media screen and (min-width: 768px) {
  .topper--image--desktop {
    display: block;
  }
}
.topper--image--mobile {
  height: 80vw;
  display: block;
}
@media screen and (min-width: 768px) {
  .topper--image--mobile {
    display: none;
  }
}
.topper.filter {
  position: relative;
}
.topper.filter::after {
  content: "";
}
@media (max-width: 667px) {
  .single-vacatures .topper {
    height: calc(35vw + 45px);
    background-size: 100%;
    background-position: 50% 75px;
    padding: 0 0 20vw;
  }
  .single-vacatures .topper:after {
    height: calc(100% - 75px);
    top: 75px;
  }
  .single-vacatures .topper .container {
    min-height: 70px;
  }
}
.topper h1 {
  color: #000;
}

.topper__flex {
  display: flex;
  align-items: center;
}

.topper-regions {
  margin: 2rem 0;
  padding-left: 2rem;
  font-weight: 900;
  font-size: 35;
  border-left: 1px solid #fff;
}
@media screen and (max-width: 768px) {
  .topper-regions {
    border-color: #000;
    margin: 0 0 2rem;
  }
}

.topper--no-image {
  height: auto;
}
.topper--no-image .topper__content {
  position: relative;
  padding: 2em;
}
@media screen and (max-width: 768px) {
  .topper--no-image .topper__content {
    height: 80vw;
  }
}

.topper__link-back {
  display: inline-block;
  margin-bottom: 1em;
  font-size: 0.85em;
}

@media screen and (max-width: 667px) {
  .topper__row-content--has-mobile {
    display: none;
  }
}

.topper__row-content-mobile {
  display: none;
}
@media screen and (max-width: 667px) {
  .topper__row-content-mobile {
    display: block;
  }
}

.topper-square {
  width: 100%;
  height: 35vw;
  max-height: 570px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 80% center;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .topper-square {
    height: 80vw;
  }
}
.topper-square .container {
  height: 100%;
}

@media screen and (max-width: 768px) {
  .topper-square--desktop {
    display: none;
  }
}

.topper-square--mobile {
  display: none;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center right;
}
@media screen and (max-width: 768px) {
  .topper-square--mobile {
    display: block;
  }
}

.topper-square__content {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 50%;
}

.topper-square__title {
  font-weight: 300;
  margin-bottom: 0.5em;
  font-size: 35px;
}
.topper-square--desktop .topper-square__title {
  font-size: 60px;
}
@media screen and (max-width: 1024px) {
  .topper-square--desktop .topper-square__title {
    font-size: 45px;
  }
}

.topper-square__title--mobile {
  display: none;
}
@media screen and (max-width: 768px) {
  .topper-square__title--mobile {
    display: block;
  }
}

.topper-square__text {
  margin: 0;
}

.topper-square--mobile__img-wrapper {
  position: relative;
  height: 80vw;
}
.topper-square--mobile__img-wrapper img {
  width: 100%;
  height: auto;
  margin: 0;
}
.topper-square--mobile__img-wrapper .container {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

@media screen and (max-width: 768px) {
  .home-header-desktop .topper-home {
    display: none;
  }
}
.topper-home h1 {
  color: #000;
  font-weight: 300;
}
@media screen and (max-width: 768px) {
  .topper-home h1 br {
    display: none;
  }
}
@media screen and (max-width: 667px) {
  .topper-home h1 {
    font-size: calc(21.2px + 0.9vw);
    line-height: 34px;
  }
}
@media screen and (max-width: 667px) and (min-width: 1200px) {
  .topper-home h1 {
    font-size: 32px;
  }
}
@media screen and (max-width: 375px) {
  .topper-home h1 {
    font-size: 20px;
    line-height: 24px;
  }
}
.topper-home p {
  color: inherit;
  padding: 0;
  font-size: calc(20.4px + 0.3vw);
}
@media (min-width: 1200px) {
  .topper-home p {
    font-size: 24px;
  }
}
@media screen and (max-width: 1200px) {
  .topper-home p {
    font-size: 18px;
  }
}
@media screen and (max-width: 1024px) and (min-width: 769px) {
  .topper-home p {
    max-width: 50%;
  }
}
@media screen and (max-width: 667px) {
  .topper-home p {
    font-size: 14px;
  }
}
@media screen and (max-width: 375px) {
  .topper-home p {
    font-size: 10px;
  }
}
@media screen and (max-width: 667px) {
  .topper-home .btn-primary {
    font-size: 16px;
  }
}
@media screen and (max-width: 375px) {
  .topper-home .btn-primary {
    font-size: 12px;
  }
}

.video {
  width: 100%;
}
.video__popup {
  width: 100%;
  height: 100%;
  position: fixed;
  background-color: rgba(0, 0, 0, 0.9);
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 900;
  display: none;
  justify-content: center;
  align-items: center;
}
.video__popup.is-open {
  display: flex;
}
.video__popup.is-open iframe {
  -webkit-animation: 1s popIn forwards;
          animation: 1s popIn forwards;
}
.video__popup-wrap {
  width: 60%;
  margin: 0 auto;
  height: 30vw;
  position: relative;
}
@media screen and (max-width: 768px) {
  .video__popup-wrap {
    width: 100%;
    height: 50vw;
  }
}
.video__popup-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.video__popup--close {
  position: absolute;
  right: 2rem;
  top: 2rem;
  font-size: 1rem;
  line-height: 2.8rem;
  color: #fff;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  border: 2px solid #fff;
  text-align: center;
  cursor: pointer;
}
.video video {
  width: 100%;
  height: auto;
}

.full-image img {
  width: 100%;
}

@-webkit-keyframes popIn {
  from {
    transform: scale(1.2);
  }
  to {
    transform: scale(1);
  }
}

@keyframes popIn {
  from {
    transform: scale(1.2);
  }
  to {
    transform: scale(1);
  }
}
.video-inline__wrapper {
  position: relative;
  padding-bottom: 56.25%;
  /*16:9*/
  height: 0;
  overflow: hidden;
  background-color: #000;
  cursor: pointer;
}
.video-inline__wrapper img {
  position: absolute;
  width: 100%;
  top: -16.84%;
  left: 0;
  opacity: 0.7;
}
.video-inline__wrapper iframe, .video-inline__wrapper object, .video-inline__wrapper embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100%;
}

.video-inline__thumbnail {
  position: absolute;
  top: 0;
  left: 0;
  background: no-repeat center center;
  background-size: cover;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 0;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .video-inline__thumbnail {
    display: none;
  }
}
.video-inline__thumbnail svg {
  width: 150px;
  height: auto;
  fill: white;
  transition: 0.2s ease all;
}
.video-inline__thumbnail:hover svg {
  fill: #da291c;
}

.video-inline--hidden {
  display: none;
}

.why {
  padding: 80px 0;
  border-top: 1px solid #dde1e4;
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1024px) {
  .why {
    background-position: center center;
    background-size: contain;
  }
}
@media screen and (max-width: 768px) {
  .why {
    padding: 40px 0;
    background-image: none !important;
  }
}
.why-wrap {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.why__intro {
  margin: 0 0 4rem;
}
@media screen and (max-width: 768px) {
  .why__intro {
    margin: 0 0 2rem;
  }
}
.why__item {
  width: 23%;
}
@media screen and (max-width: 1024px) {
  .why__item {
    width: 48%;
    margin: 0 0 2rem;
  }
}
@media screen and (max-width: 768px) {
  .why__item {
    width: 100%;
  }
}
.why__item h4 {
  min-height: 80px;
  border-bottom: 8px solid #da291c;
  margin: 0 0 2rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .why__item h4 {
    min-height: 60px;
  }
}
@media screen and (max-width: 768px) {
  .why__item h4 {
    min-height: auto;
    display: inline-block;
  }
}
@media screen and (max-width: 667px) {
  .why__item h4 {
    border-bottom: 4px solid #da291c;
  }
}
.why__item h4::before {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  bottom: -8px;
  left: -8px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(90deg);
  transition: all 0.25s ease-out;
}
@media screen and (max-width: 667px) {
  .why__item h4::before {
    width: 4px;
    height: 4px;
    bottom: -4px;
    left: -4px;
  }
}
.why__item h4::after {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  bottom: -8px;
  right: -8px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(-90deg);
  transition: all 0.25s ease-out;
}
@media screen and (max-width: 667px) {
  .why__item h4::after {
    width: 4px;
    height: 4px;
    bottom: -4px;
    right: -4px;
  }
}
.why--more {
  padding: 20px 0 0;
}

.testimonial {
  margin: 0 auto 4rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 90%;
  color: #000;
}
.testimonial__img {
  width: 40%;
}
.testimonial__img img {
  width: 100%;
  height: auto;
}
.testimonial__content {
  width: 55%;
}
.testimonial__content--text {
  margin: 0 0 1rem;
  font-size: 2.5rem;
}
.testimonial__content--meta {
  margin: 1rem 0 0;
  font-weight: 700;
  font-size: 2rem;
  color: #da291c;
}
.testimonial--bar {
  width: 8rem;
  height: 0.5rem;
  background-color: #da291c;
  position: relative;
}
.testimonial--bar::before, .testimonial--bar::after {
  content: "";
  width: 0.5rem;
  height: 0.5rem;
  position: absolute;
  bottom: 0;
}
.testimonial--bar::before {
  background-image: linear-gradient(45deg, transparent 50%, #da291c 0);
  left: -0.5rem;
}
.testimonial--bar::after {
  background-image: linear-gradient(225deg, transparent 50%, #da291c 0);
  right: -0.5rem;
}

@media (max-width: 1024px) {
  .testimonials--front-page, .topics--front-page {
    display: none;
  }
}

.social {
  width: 100%;
  text-align: center;
  margin: 2rem 0 0;
}

.c-social-share .o-container {
  display: flex;
  align-items: center;
}
.c-social-share .o-container .at-share-btn-elements {
  margin: 0 0 0.8rem;
}
.c-social-share .o-container .at-share-btn {
  background-color: transparent !important;
  padding: 0 0.5rem !important;
  margin: 0 !important;
  border-radius: 0 !important;
  width: 3.5rem;
  height: 2.5rem;
}
.c-social-share .o-container .at-share-btn:not(:last-child) {
  border-right: 1px solid #000;
}
.c-social-share .o-container .at-share-btn:hover {
  transform: translateY(0) !important;
}
.c-social-share .o-container .at-share-btn:hover svg {
  fill: #da291c !important;
}
.c-social-share .o-container .at-share-btn .at-icon-wrapper {
  width: 2.5rem !important;
  height: 2.5rem !important;
}
.c-social-share .o-container .at-share-btn svg {
  fill: #000 !important;
  width: 2.5rem !important;
  height: 2.5rem !important;
}
.c-social-share .o-container span {
  text-transform: uppercase;
  font-size: 1.6rem;
  color: #000;
  padding-right: 1rem;
}

.c-social {
  display: flex;
  justify-content: center;
  align-items: center;
}
.c-social > div:not(:last-child) {
  margin-right: 1em;
}
.c-social i {
  color: #da291c;
  font-size: 2.5rem;
}
.c-social i:hover, .c-social i:focus {
  color: #b22217;
}

.c-lang {
  width: 12rem;
  margin: 0.5rem 0;
  position: relative;
  z-index: 100;
  right: 0;
  cursor: pointer;
  display: flex;
  height: 6rem;
  background-color: transparent;
  border: 1px solid transparent;
}
.c-lang.open {
  background-color: #fff;
}
.c-lang.open li {
  display: block;
}
.c-lang.open li::after {
  transform: rotate(180deg);
  right: 1rem;
}
.c-lang.open li a {
  pointer-events: auto;
}
.c-lang li {
  font-size: 1.5rem;
  width: 100%;
  text-align: right;
  position: absolute;
  left: 0;
  z-index: 200;
  top: 2.5rem;
  padding: 2rem 0;
  display: none;
  background-color: white;
}
.c-lang li.current-lang {
  border-bottom: 0 !important;
  top: 0;
  padding: 1.4rem 0 0 0;
  display: block;
}
.c-lang li.current-lang::after {
  content: "";
  background-image: url("../images/cheops-arrow-down.svg");
  background-repeat: no-repeat;
  position: absolute;
  top: 1.6rem;
  right: 0;
  display: block;
  width: 0.8rem;
  height: 0.8rem;
}
.c-lang li a {
  padding: 0 2rem 0 2rem;
  text-decoration: none;
  color: #000;
  display: block;
  pointer-events: none;
}
@media screen and (max-width: 1024px) {
  .c-lang li a {
    color: #000 !important;
  }
}

.reasons {
  padding-bottom: 0 !important;
}

.reasons__intro, .reasons__pre-title, .reasons__title {
  text-align: center;
}

.reasons__intro {
  font-size: 22px;
}
@media screen and (max-width: 768px) {
  .reasons__intro {
    font-size: 18px;
  }
}
.reasons__intro p {
  line-height: 1.4;
}

.reasons__pre-title {
  display: block;
  text-transform: uppercase;
  font-size: 20px;
  margin: 4rem 0 1rem 0;
  color: #000;
}

.reasons__list {
  margin: 4rem 0;
  padding: 0;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .reasons__list {
    flex-wrap: wrap;
    margin: 0;
  }
}
@media screen and (max-width: 667px) {
  .reasons__list {
    flex-direction: column;
  }
}
.reasons__list li {
  list-style-type: none;
  width: 30%;
}
@media screen and (max-width: 768px) {
  .reasons__list li {
    width: 47.5%;
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 667px) {
  .reasons__list li {
    width: 100%;
  }
}
.reasons__list img {
  margin: 0;
}

.reason__title {
  font-size: 24px;
  margin: 2rem 0 0 0;
}

.benefits__wrapper {
  border: 1px solid #425563;
  padding: 6rem;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 667px) {
  .benefits__wrapper {
    flex-direction: column;
    padding: 3rem;
  }
}

.benefits__title, .benefits__list {
  width: 47.5%;
}
@media screen and (max-width: 667px) {
  .benefits__title, .benefits__list {
    width: auto;
  }
}

.benefits__title {
  color: #000;
  font-size: 40;
}

.benefits__list ul, .benefits__list ol {
  margin: 0;
  padding: 0;
  list-style: none;
}
@media screen and (max-width: 667px) {
  .benefits__list ul, .benefits__list ol {
    padding-left: 2rem;
  }
}
.benefits__list li {
  line-height: 150%;
  padding: 0 0 0 3rem;
  position: relative;
}
.benefits__list li:before {
  content: "";
  width: 2rem;
  height: 0.5rem;
  background-image: url("../images/list-item.svg");
  background-size: cover;
  position: absolute;
  left: 0;
  top: 0.9rem;
}

.select__wrapper select {
  display: block;
  width: 100%;
  border: 0;
  padding: 0 1em 0 0;
  font-weight: 700;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.select__wrapper select::-ms-expand {
  display: none;
}

.apply-form {
  border: 1px solid #bbc3c9;
  padding: 6rem;
}
@media screen and (max-width: 667px) {
  .apply-form {
    padding: 2rem;
  }
}
.apply-form .gform_fields {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 2rem 0 0;
}
.apply-form .gform_fields li {
  width: 100%;
}
.apply-form .gform_fields li:nth-child(1), .apply-form .gform_fields li:nth-child(2), .apply-form .gform_fields li:nth-child(3), .apply-form .gform_fields li:nth-child(4) {
  width: 49%;
  margin: 0 0 2%;
}
@media screen and (max-width: 667px) {
  .apply-form .gform_fields li:nth-child(1), .apply-form .gform_fields li:nth-child(2), .apply-form .gform_fields li:nth-child(3), .apply-form .gform_fields li:nth-child(4) {
    width: 100%;
  }
}
.apply-form .gform_fields label {
  display: block;
  color: #000;
  margin: 1rem 0 2rem;
}
.apply-form .gform_footer {
  display: flex;
}
.apply-form .screen-reader-text {
  display: block;
  padding: 1rem 0 0;
  margin: 0;
}

.apply-form__wrapper {
  margin-bottom: 6rem;
}
@media screen and (max-width: 768px) {
  .apply-form__wrapper {
    margin-bottom: 3rem;
  }
}

.c-info-quote {
  padding: 4rem 0 0;
  color: #425563;
  text-align: center;
}
@media (max-width: 1024px) {
  .c-info-quote {
    border-bottom: 1px solid #dde1e4;
    padding-bottom: 1em;
  }
}
.c-info-quote span {
  line-height: 1.5;
  display: block;
  font-size: 22px;
}

.c-red-block__social-wrapper {
  margin-top: 3em;
}
@media (max-width: 1024px) {
  .c-red-block__social-wrapper {
    display: none;
  }
}

.c-red-block {
  padding: 6rem 0;
  background-color: #da291c;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .c-red-block {
    padding: 3rem 0;
  }
}
.c-red-block__wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.c-red-block__wrapper--center {
  align-items: center;
}
.c-red-block__left {
  width: 40%;
}
@media screen and (max-width: 768px) {
  .c-red-block__left {
    width: 100%;
  }
}
.c-red-block__right {
  width: 50%;
  padding: 0;
}
.newsletter-wrap--center .c-red-block__right {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .newsletter-wrap--center .c-red-block__right {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .c-red-block__right {
    width: 100%;
  }
}
.c-red-block .gform_button {
  background-color: #fff !important;
  color: #000 !important;
  box-shadow: 8px 8px #000;
  margin: 0;
}
.c-red-block .gform_button:hover, .c-red-block .gform_button:active {
  box-shadow: 1px 1px #000;
  transform: translate(4px, 4px);
  background-color: #fff !important;
  color: #000 !important;
}
.c-red-block .gform_button::before {
  background-image: linear-gradient(315deg, transparent 50%, #000 50%);
}
.c-red-block .gform_button::after {
  background-image: linear-gradient(315deg, transparent 50%, #000 50%);
}
.c-red-block .hidden_sub_label {
  display: none;
}
.c-red-block .validation_message,
.c-red-block .validation_error {
  color: #fff;
}
.c-red-block input[type=text],
.c-red-block input[type=email],
.c-red-block textarea,
.c-red-block .checkbox {
  background-color: transparent !important;
  border-color: #fff !important;
  color: #fff !important;
}
.c-red-block input[type=text]::-webkit-input-placeholder, .c-red-block input[type=email]::-webkit-input-placeholder, .c-red-block textarea::-webkit-input-placeholder, .c-red-block .checkbox::-webkit-input-placeholder {
  color: #fff;
}
.c-red-block input[type=text]::-moz-placeholder, .c-red-block input[type=email]::-moz-placeholder, .c-red-block textarea::-moz-placeholder, .c-red-block .checkbox::-moz-placeholder {
  color: #fff;
}
.c-red-block input[type=text]:-ms-input-placeholder, .c-red-block input[type=email]:-ms-input-placeholder, .c-red-block textarea:-ms-input-placeholder, .c-red-block .checkbox:-ms-input-placeholder {
  color: #fff;
}
.c-red-block input[type=text]::-ms-input-placeholder, .c-red-block input[type=email]::-ms-input-placeholder, .c-red-block textarea::-ms-input-placeholder, .c-red-block .checkbox::-ms-input-placeholder {
  color: #fff;
}
.c-red-block input[type=text]::placeholder,
.c-red-block input[type=email]::placeholder,
.c-red-block textarea::placeholder,
.c-red-block .checkbox::placeholder {
  color: #fff;
}
.c-red-block h3, .c-red-block h4, .c-red-block h5 {
  color: #fff;
}

.c-red-block__social {
  display: flex;
  justify-content: flex-start;
}
.c-red-block__social > div:not(:last-child) {
  margin-right: 1em;
}
.c-red-block__social i {
  color: white;
  font-size: 2.5rem;
}

.c-lead-capture__wrapper {
  background: no-repeat center bottom;
  background-size: cover;
  height: 100vh;
}

.c-lead-capture__header {
  padding: 1em;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.c-lead-capture__header .c-btn--plain {
  display: none;
}

.c-lead-capture__header--confirmation .c-btn--plain {
  display: block;
}

.c-lead-capture__logo {
  display: block;
  width: 200px;
}
.c-lead-capture__logo img {
  max-width: 100%;
  height: auto;
}

.c-lead-capture {
  position: relative;
  border: 1px solid black;
  padding: 2em;
  z-index: 0;
  min-height: 70vh;
  display: flex;
  align-items: center;
}

.c-lead-capture--hidden {
  display: none;
}

.c-lead-capture--start {
  justify-content: center;
  flex-direction: column;
}
.c-lead-capture--start h1 {
  margin-bottom: 1em;
  text-shadow: 2px 2px 0 white;
}

.c-lead-capture__background {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: no-repeat center center;
  background-size: cover;
  z-index: -1;
  opacity: 0.1;
}
.c-lead-capture--won .c-lead-capture__background, .c-lead-capture--start .c-lead-capture__background {
  opacity: 0.8;
}
.c-lead-capture--lost .c-lead-capture__background {
  opacity: 0;
}

.c-lead-capture__form .gform_heading {
  margin-bottom: 1.5em;
}
.c-lead-capture__form .gform_title {
  margin-bottom: 0.5em;
}
.c-lead-capture__form .gform_description {
  font-size: 2rem;
}
.c-lead-capture__form .gform_fields {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.c-lead-capture__form .gform_fields li {
  width: 48.75%;
  margin-bottom: 1em;
}
.c-lead-capture__form .gform_fields input {
  background-color: transparent;
}
.c-lead-capture__form .gform_footer {
  margin: 1.5em 0 0 0;
}
.c-lead-capture__form .gform_button {
  margin: 0;
  color: black !important;
}

.c-lead-capture-confirmation {
  padding: 1.5em;
}
.c-lead-capture--won .c-lead-capture-confirmation {
  background-color: rgba(255, 255, 255, 0.6);
}

.c-jobs-tab--hidden {
  display: none;
}

.c-jobs-tabs__navigation {
  display: flex;
  align-items: center;
  margin-bottom: 2em;
}

.c-jobs-tabs__button {
  background: none;
  border: 0;
  padding: 0;
  transition: 0.2s ease all;
}
.c-jobs-tabs__button:not(:last-child) {
  margin-right: 1em;
}
.c-jobs-tabs__button:after {
  content: "";
  display: block;
  background-color: transparent;
  height: 5px;
  width: 100%;
  margin-top: 0.5em;
  transform: skew(50deg);
  transition: 0.2s ease all;
}
.c-jobs-tabs__button:hover:after, .c-jobs-tabs__button:focus:after {
  background-color: #da291c;
}

.c-jobs-tabs__button--active {
  font-weight: 700;
}
.c-jobs-tabs__button--active:after {
  background-color: #da291c;
}

/*
 * Widgets
 */
/**
*** Global styling for widget or global widget elements
**/
.w-widget {
  margin-bottom: 4rem;
}
@media (max-width: 1024px) {
  .w-widget {
    margin-bottom: 2rem;
  }
}
.w-widget ul, .w-widget ol {
  margin-bottom: 2rem;
}
@media (max-width: 550px) {
  .w-widget ul, .w-widget ol {
    padding-left: 20px;
  }
}
.w-widget blockquote {
  position: relative;
  display: inline-block;
  font-style: italic;
  font-size: 20;
}
.w-widget blockquote:before, .w-widget blockquote:after {
  content: "";
  background: url(../images/sprites/src/icon-quote.svg) no-repeat;
  background-size: 15px;
  width: 15px;
  height: 15px;
  position: absolute;
}
@media (max-width: 550px) {
  .w-widget blockquote:before, .w-widget blockquote:after {
    background-size: 10px;
    width: 10px;
    height: 10px;
  }
}
.w-widget blockquote:before {
  transform: scale(-1, 1);
  left: -25px;
  top: 0;
}
.w-widget blockquote:after {
  right: -25px;
  bottom: -5px;
}

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

.w-intro {
  margin-bottom: 3rem;
}

.w-image img {
  height: auto;
  width: auto;
}

.w-img-wrapper {
  display: inline-block;
}

.w-image.full-width img {
  height: auto;
  width: 100%;
}

@media (max-width: 769px) {
  .image-left .panel-grid-cell:nth-of-type(odd) {
    order: 2;
  }
  .image-left .panel-grid-cell:nth-of-type(even) {
    order: 1;
    margin-bottom: 30px;
  }
}
.w-hero {
  position: relative;
  overflow: hidden;
}
@media (min-width: 768px) {
  .w-hero {
    max-height: 580px;
  }
}

@media (min-width: 1024px) {
  .w-hero__img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
  }
}
@media (max-width: 1024px) {
  .w-hero__img {
    max-height: 30vh;
    overflow: hidden;
  }
}
.w-hero__img img {
  width: 100%;
  height: auto;
}

.w-hero__content {
  position: relative;
  min-height: 500px;
  padding: 4rem 0;
}
@media (max-width: 1500px) {
  .w-hero__content {
    min-height: 400px;
  }
}
@media (max-width: 768px) {
  .w-hero__content {
    min-height: inherit;
  }
}
@media (max-width: 1024px) {
  .w-hero__content {
    padding: 3rem 0 2rem;
  }
}
.w-hero__content .inner {
  width: 100%;
  padding-left: 2rem;
  padding-right: 2rem;
}
@media (min-width: 768px) {
  .w-hero__content .inner {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    max-width: 700px;
  }
}
@media (min-width: 1024px) {
  .w-hero__content * {
    color: #fff;
    text-shadow: 0 0 5px #000;
  }
}
.w-hero__content p + .c-btn {
  margin-top: 1rem;
}

.w-hero.u-text-align-center .inner {
  left: 0;
  right: 0;
  margin: 0 auto;
}

.w-hero.u-text-align-left .inner {
  left: 0;
}

.w-hero.u-text-align-right .inner {
  right: 0;
}
@media (max-width: 1024px) {
  .w-hero.u-text-align-right .inner {
    text-align: left;
  }
}

.w-hero.full-width .w-hero__img .o-container {
  max-width: none;
  padding: 0;
}
@media (max-width: 1024px) {
  .w-hero.full-width .inner {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (max-width: 1024px) {
  .w-hero.boxed {
    border: 1px solid #eee;
    margin-left: 2rem;
    margin-right: 2rem;
  }
  .w-hero.boxed .o-container {
    padding: 0;
  }
}

.w-editor h2 {
  font-size: 24px;
  margin: 0 0 15px;
}
@media screen and (max-width: 768px) {
  .w-editor h2 {
    font-size: 22px;
  }
}

.w-editor.intro p {
  font-size: 22px;
}

.w-editor.boxed .o-container {
  padding: 3rem;
  background-color: #da291c;
  color: #fff;
}
@media (max-width: 667px) {
  .w-editor.boxed .o-container {
    padding: 2rem;
  }
}
.w-editor.boxed .o-container h2, .w-editor.boxed .o-container h3, .w-editor.boxed .o-container h4, .w-editor.boxed .o-container h5, .w-editor.boxed .o-container h6 {
  color: inherit;
}
.w-editor.boxed .o-container ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.w-editor.boxed .o-container ul li {
  padding: 0;
}
.w-editor.boxed .o-container ul li:before {
  display: none;
}

@media (max-width: 667px) {
  .w-image-text {
    border: 2px solid #eee;
    padding: 2rem 0;
    margin-right: 2rem;
    margin-left: 2rem;
  }
}
.w-image-text .image, .w-image-text .editor {
  width: calc(96%/2);
}
@media (max-width: 667px) {
  .w-image-text .image, .w-image-text .editor {
    width: 100%;
  }
}
@media (max-width: 667px) {
  .w-image-text .image {
    margin-bottom: 2rem;
  }
}
.w-image-text .image a {
  display: block;
}
.w-image-text .image img {
  width: 100%;
  height: auto;
}
.w-image-text.small .image {
  width: 30%;
  margin-right: 0;
}
@media (max-width: 667px) {
  .w-image-text.small .image {
    width: 100%;
  }
}
.w-image-text.small .editor {
  width: 70%;
  padding-left: 3rem;
}
@media (max-width: 667px) {
  .w-image-text.small .editor {
    width: 100%;
    padding-left: 0;
  }
}
@media (min-width: 667px) {
  .w-image-text.small.reverse .image {
    order: 2;
  }
}
.w-image-text.small.reverse .editor {
  padding-right: 3rem;
  padding-left: 0;
}
@media (max-width: 667px) {
  .w-image-text.small.reverse .editor {
    padding-right: 0;
  }
}
@media (min-width: 667px) {
  .w-image-text.small.reverse .editor {
    order: 1;
  }
}
.w-image-text.highlight {
  margin-right: 2rem;
  padding-left: 2rem;
}
@media (max-width: 667px) {
  .w-image-text.highlight {
    border: none;
    padding: 0;
  }
}
.w-image-text.highlight .o-container {
  border: 2px solid #f24747;
  padding: 3rem;
}
@media (max-width: 667px) {
  .w-image-text.highlight .o-container {
    padding: 2rem;
  }
}

@media (max-width: 1500px) {
  .w-cta {
    margin-right: 20px;
    margin-left: 20px;
  }
}
@media (max-width: 1024px) {
  .w-cta {
    margin: 0;
  }
}
@media (max-width: 667px) {
  .w-cta {
    padding: 0;
    border: none;
  }
}
.w-cta.background {
  background-color: #768693;
  color: #fff;
}
.w-cta.background h4 {
  color: inherit;
}
.w-cta.border {
  border: 1px solid #000;
}
.w-cta__content {
  width: 60%;
}
@media (max-width: 1024px) {
  .w-cta__content {
    width: 100%;
  }
}
.w-cta__btn {
  width: 30%;
  text-align: right;
}
.w-cta .inner, .w-cta .link {
  position: relative;
  z-index: 10;
  padding: 4rem 6rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: 90%;
  margin: 0 auto;
}
@media (max-width: 1024px) {
  .w-cta .inner, .w-cta .link {
    padding: 3rem;
  }
}
@media (max-width: 667px) {
  .w-cta .inner, .w-cta .link {
    width: 100%;
  }
}
.w-cta .link {
  text-decoration: none;
  cursor: pointer;
}
.w-cta .link h3, .w-cta .link p {
  color: #000;
}
.w-cta .link:hover .c-btn--cta:before, .w-cta .link:focus .c-btn--cta:before {
  left: 0px;
  top: 0px;
}
.w-cta .link:hover .c-btn--sec:after, .w-cta .link:focus .c-btn--sec:after {
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
}
.w-cta p {
  margin: 0;
}
@media (max-width: 1024px) {
  .w-cta p {
    margin: 0 0 1rem;
  }
}

.w-cta-link-with-text__content {
  margin-bottom: 1em;
  min-height: 330px;
}
.w-cta-link-with-text__content p {
  line-height: 1.5;
}

.w-quote {
  font-family: "Volkart";
  font-weight: 800;
  padding: 20px 0;
}
.w-quote .container {
  padding: 0;
}
.w-quote__text {
  font-size: 24px;
  color: #000;
  line-height: 28px;
  margin-top: 20px;
  position: relative;
  border-top: 8px solid #da291c;
  padding: 20px 20px 0;
  max-width: 70%;
}
@media screen and (max-width: 667px) {
  .w-quote__text {
    border-top: 4px solid #da291c;
    padding: 20px 0 0;
  }
}
.w-quote__text::before {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  top: -8px;
  left: -8px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(90deg);
  transition: all 0.25s ease-out;
}
@media screen and (max-width: 667px) {
  .w-quote__text::before {
    width: 4px;
    height: 4px;
    top: -4px;
    left: -4px;
  }
}
.w-quote__text::after {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  top: -8px;
  right: -8px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(-90deg);
  transition: all 0.25s ease-out;
}
@media screen and (max-width: 667px) {
  .w-quote__text::after {
    width: 4px;
    height: 4px;
    top: -4px;
    right: -4px;
  }
}
.w-quote--author {
  font-size: 16px;
  color: #bbc3c9;
  padding: 0 20px;
}
@media screen and (max-width: 667px) {
  .w-quote--author {
    padding: 0;
  }
}

.w-video img {
  width: 100%;
  height: auto;
}
.w-video svg {
  fill: #fff;
  width: 160px;
  height: 160px;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 768px) {
  .w-video svg {
    width: 60px;
    height: 60px;
  }
}

.w-video--play {
  display: block;
  position: relative;
  overflow: hidden;
}
.w-video--play:hover svg {
  fill: #da291c;
}

.w-video--button {
  position: absolute;
  top: calc(50% - 80px);
  left: calc(50% - 80px);
  z-index: 300;
}
@media screen and (max-width: 768px) {
  .w-video--button {
    top: calc(50% - 40px);
    left: calc(50% - 30px);
  }
}

.w-slider--text .c-slide__text {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  max-width: 700px;
  width: 80%;
  left: 0;
  right: 0;
  margin: 0 auto;
  text-align: center;
  z-index: 2;
}
@media (max-width: 550px) {
  .w-slider--text .c-slide__text {
    width: 70%;
  }
}
.w-slider--text .c-slide__text p {
  font-size: 25;
  color: #fff;
}
@media (max-width: 550px) {
  .w-slider--text .c-slide__text p {
    font-size: 18;
  }
}

.w-slider__intro {
  margin-bottom: 3rem;
}

.c-gallery__item {
  margin-bottom: 2rem;
}
.c-gallery__item img {
  width: 100%;
  height: auto;
}

.c-flex-cols .l-columns__item {
  margin-bottom: 7rem;
}
.c-flex-cols img {
  margin-bottom: 2rem;
}
.c-flex-cols h3 {
  margin-bottom: 0.5rem;
}

.w-download {
  background-color: #da291c;
  padding: 4rem 3rem;
  color: #fff;
}
.w-download h4 {
  font-size: 3rem;
  color: inherit;
}

.w-question-answer .o-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.w-question-answer__question {
  width: 45%;
  border-bottom: 8px solid #da291c;
  position: relative;
}
@media screen and (max-width: 768px) {
  .w-question-answer__question {
    width: 100%;
    border-bottom: 4px solid #da291c;
  }
  .w-question-answer__question h2 {
    margin: 0 0 1rem;
  }
}
.w-question-answer__question::before {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  bottom: -8px;
  left: -8px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(90deg);
  transition: all 0.25s ease-out;
}
@media screen and (max-width: 768px) {
  .w-question-answer__question::before {
    width: 4px;
    height: 4px;
    bottom: -4px;
    left: -4px;
  }
}
.w-question-answer__question::after {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  bottom: -8px;
  right: -8px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 50%);
  transform: rotate(-90deg);
  transition: all 0.25s ease-out;
}
@media screen and (max-width: 768px) {
  .w-question-answer__question::after {
    width: 4px;
    height: 4px;
    bottom: -4px;
    right: -4px;
  }
}
.w-question-answer__answer {
  width: 45%;
}
@media screen and (max-width: 768px) {
  .w-question-answer__answer {
    width: 100%;
    margin: 2rem 0 0;
  }
}

.w-functions-wrap {
  width: 80%;
  margin: 0 auto;
}
@media (max-width: 1023.98px) {
  .w-functions-wrap {
    width: 100%;
  }
}
.w-functions__item {
  display: block;
  width: 100%;
  margin: 4rem 0;
}
@media (max-width: 1023.98px) {
  .w-functions__item {
    margin: 2rem 0;
  }
}
.w-functions__item.active h4::after {
  transform: rotate(-180deg);
}
.w-functions__item--content {
  display: none;
}
.w-functions__item h4 {
  position: relative;
  padding-right: 3rem;
  cursor: pointer;
}
.w-functions__item h4::after {
  content: "";
  background-image: url("../images/cheops-arrow-down.svg");
  background-size: cover;
  position: absolute;
  top: 0.5rem;
  right: 0;
  width: 1.5rem;
  height: 1.5rem;
  transition: all 0.3s ease-in-out;
}

.w-functions-form {
  margin-top: 8rem;
}
@media (max-width: 1023.98px) {
  .w-functions-form {
    margin-top: 4rem;
  }
}

/*
 * Utilities
 * Utilities and helper classes with ability to override anything which goes
 * before in the triangle, eg. hide helper class
 */
/*
 *  Utilities: Clearfix
 *  ---
 *  Helper class to clear floats from a container
 */
.u-clearfix::after {
  content: "";
  clear: both;
  display: table;
}

.u-bg-overlay {
  position: relative;
}
.u-bg-overlay:after {
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.underline {
  width: calc(100% - 1rem);
  margin: 1rem auto 0;
  height: 5px;
  background-color: #da291c;
  position: relative;
}
.underline::before {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  bottom: 0;
  left: -5px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 0);
  transform: rotate(90deg);
  transition: all 0.25s ease-out;
}
.underline::after {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  bottom: 0;
  right: -5px;
  background-image: linear-gradient(315deg, transparent 50%, #da291c 0);
  transform: rotate(-90deg);
  transition: all 0.25s ease-out;
}

/*
 *  Utilities: Colors
 *  ---
 *  Foreground & background color utilities
 */
/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-base-light {
  color: #e6e6e6 !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-base-light {
  background-color: #e6e6e6 !important;
}

/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-base-base {
  color: #000 !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-base-base {
  background-color: #000 !important;
}

/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-base-dark {
  color: black !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-base-dark {
  background-color: black !important;
}

/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-neutral-light {
  color: #e6e6e6 !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-neutral-light {
  background-color: #e6e6e6 !important;
}

/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-neutral-base {
  color: #bbc3c9 !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-neutral-base {
  background-color: #bbc3c9 !important;
}

/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-neutral-dark {
  color: #4d4d4d !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-neutral-dark {
  background-color: #4d4d4d !important;
}

/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-accent-light {
  color: #e05b52 !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-accent-light {
  background-color: #e05b52 !important;
}

/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-accent-base {
  color: #da291c !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-accent-base {
  background-color: #da291c !important;
}

/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-accent-dark {
  color: #b30c00 !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-accent-dark {
  background-color: #b30c00 !important;
}

/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-error-light {
  color: #e05259 !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-error-light {
  background-color: #e05259 !important;
}

/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-error-base {
  color: #b25055 !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-error-base {
  background-color: #b25055 !important;
}

/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-error-dark {
  color: #b30009 !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-error-dark {
  background-color: #b30009 !important;
}

/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-success-light {
  color: #6ae052 !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-success-light {
  background-color: #6ae052 !important;
}

/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-success-base {
  color: #559947 !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-success-base {
  background-color: #559947 !important;
}

/**
 * text color classes (e.g.: u-color-black-base)
 */
.u-color-success-dark {
  color: #27661a !important;
}

/**
 * background color classes (e.g.: u-bgcolor-black-base)
 */
.u-bgcolor-success-dark {
  background-color: #27661a !important;
}

/**
 * Inherit font color
 */
.u-color-inherit {
  color: inherit !important;
}

/*
 *  Font Family
 *  ---
 *  Offers re-usable classes to set your font-family.
 */
.u-font-primary {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !important;
}

.u-font-secondary {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !important;
}

.wf-active .u-font-primary {
  font-family: "Volkart" !important;
}
.wf-active .u-font-secondary {
  font-family: "Volkart" !important;
}

/* ==========================================================================
   #HEADINGS
   ========================================================================== */
/*
 *  Utilities: Headings
 *  ---
 *  Redefine all of our basic heading styles against utility classes so as to
 *  allow for double stranded heading hierarchy, e.g. we semantically need an H2,
 *  but we want it to be sized like an H1:
 *
 *   <h2 class="u-h1"></h2>
 *
 */
.u-h1 {
  font-size: 40px;
}
@media screen and (max-width: 768px) {
  .u-h1 {
    font-size: 32px;
  }
}

.u-h2 {
  font-size: 32px;
}
@media screen and (max-width: 768px) {
  .u-h2 {
    font-size: 28px;
  }
}

.u-h3 {
  font-size: 28px;
}
@media screen and (max-width: 768px) {
  .u-h3 {
    font-size: 24px;
  }
}

.u-h4 {
  font-size: 24px;
}
@media screen and (max-width: 768px) {
  .u-h4 {
    font-size: 22px;
  }
}

.u-h5 {
  font-size: 20px;
}
@media screen and (max-width: 768px) {
  .u-h5 {
    font-size: 18px;
  }
}

.u-h6 {
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .u-h6 {
    font-size: 14px;
  }
}

/*
 *  Helpers flexbox
 *  ---
 *  A set of helper classes used in combination with flexbox
 */
/*  FLEX.css  */
/*  DECLARATION  ---------------------------------------------------------------

/*  FLEX CONTAINER ( SET )
    Summary:    make the elements inside a <tag> flow with flexbox by setting the
                tag's display property to 'flex'.
    Reference:  https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Using_flexbox_to_lay_out_web_applications
*/
.u-flex-set {
  /* MID: IE 10 */
  /* OLD: Safari,  iOS, Android browser, older WebKit browsers.  */
  /* NEW, Chrome 21–28, Safari 6.1+ */
  display: flex !important;
}

.u-inline-flex-set {
  /* MID: IE 10 */
  /* OLD: Safari,  iOS, Android browser, older WebKit browsers.  */
  /* NEW, Chrome 21–28, Safari 6.1+ */
  display: inline-flex !important;
}

/*  FLEX ITEM
    Summary:    a shorthand property specifying the ability of a flex item to alter
                its dimensions to fill available space. Summarizes {flex-grow, flex-shrink, flex-basis }
    Reference:  https://developer.mozilla.org/en-US/docs/Web/CSS/flex
    Default:    0 1 0 !important;
*/
.u-flexed-item {
  flex: 1 1 0 !important;
  /* VERY OLD Safari, iOS  */
  box-flex: 1 !important;
}

.u-flex--no-shrink {
  flex-shrink: 0 !important;
}

.u-flexed-item--auto {
  flex: 1 1 auto !important;
  /* VERY OLD Safari, iOS  */
  box-flex: 1 !important;
}

/*  DIRECTION ( ORIENTATION )  -------------------------------------------------
    Summary:    specifies how flex items are placed in the flex container defining
                the main axis and the direction (normal or reversed).
    Options:
        Column: set main axis to vertical
        Row :   set main axis to horizontal
    Reference:  https://developer.mozilla.org/en-US/docs/Web/CSS/flex-direction
    Default:    flex-direction: row !important;
*/
.u-flex--column {
  flex-direction: column !important;
}

.u-flex--row {
  flex-direction: row !important;
}

/*  JUSTIFICATION (Main axis)   ------------------------------------------------
    Summary:    defines how the browser distributes space between and around flex
    items along the main-axis of their container.
    Reference:  https://developer.mozilla.org/en-US/docs/Web/CSS/justify-content
    Default:    justify-content: flex-start !important;
*/
/* Pack items around the center */
.u-flex--content-center {
  justify-content: center !important;
}

/* Pack flex items from the start  */
.u-flex--content-start {
  justify-content: flex-start !important;
}

/* Pack items from the end */
.u-flex--content-end {
  justify-content: flex-end !important;
}

/* Distribute items evenly,
    The first item at the start, the last at the end */
.u-flex--content-between {
  justify-content: space-between !important;
}

/* Distribute items evenly
    Items have equal space around them */
.u-flex--content-around {
  justify-content: space-around !important;
}

/*
    ALIGN CONTENT ( Cross axis )  ----------------------------------------------
    Summary:   aligns a flex container's lines within the flex container when
               there is extra space on the cross-axis.
    Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/align-content
    Default:   align-content: flex-start !important;
*/
/* Pack lines from the cross-axis start */
.u-flex--align-content-start {
  align-content: flex-start !important;
}

/* Pack lines to the cross-axis end */
.u-flex--align-content-end {
  align-content: flex-end !important;
}

/* Pack lines around the cross-axis center */
.u-flex--align-content-center {
  align-content: center !important;
}

/* Distribute lines along the cross-axis, start to end */
.u-flex--align-content-between {
  align-content: space-between !important;
}

/* Distribute lines along the cross-axis, equally spaced */
.u-flex--align-content-around {
  align-content: space-around !important;
}

/* Stretch lines to occupy the whole cross-axis */
.u-flex--align-content-stretch {
  align-content: stretch !important;
}

/* push flex item to right */
.u-flex--push-right {
  margin-right: auto !important;
}

/* push flex item to left */
.u-flex--push-left {
  margin-left: auto !important;
}

/* push flex item to bottom */
.u-flex--push-bottom {
  margin-bottom: auto !important;
}

/* push flex item to top */
.u-flex--push-top {
  margin-top: auto !important;
}

/*
    ALIGN ITEMS ( Cross axis )  ------------------------------------------------
    Summary:   aligns flex items of the current flex line the same way as
               justify-content but in the perpendicular direction.
    Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/align-items
    Default:   align-items: stretch !important;
*/
/* Center items in the cross-axis */
.u-flex--align-items-center {
  align-items: center !important;
}

/* Align to cross-start */
.u-flex--align-items-start {
  align-items: flex-start !important;
}

/* Align to cross-end */
.u-flex--align-items-end {
  align-items: flex-end !important;
}

/* Align the items' baselines */
.u-flex--align-items-baseline {
  align-items: baseline !important;
}

/* Stretch the items to fit
    DEFAULT VALUE  */
.u-flex--align-items-stretch {
  align-items: stretch !important;
}

/*
    ALIGN SELF ( Cross axis )  ------------------------------------------------
    Summary:   aligns flex items of the current flex line overriding the align-items value.
    Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/align-self
    Default:   align-self: auto !important;
*/
/*  Computes to parent's align-items value or stretch if the element has no parent.  */
.u-flex--align-self-auto {
  align-self: auto !important;
}

/*  Cross-start margin edge of the flex item is flushed with the cross-start edge of the line.  */
.u-flex--align-self-start {
  align-self: flex-start !important;
}

/*  Cross-end margin edge of the flex item is flushed with the cross-end edge of the line.  */
.u-flex--align-self-end {
  align-self: flex-end !important;
}

/* Flex item's margin box is centered within the line on the cross-axis.
    If the cross-size of the item is larger than the flex container, it will
    overflow equally in both directions.  */
.u-flex--align-self-center {
  align-self: center !important;
}

/*  All flex items are aligned such that their baselines align. The item with
    the largest distance between its cross-start margin edge and its baseline is
    flushed with the cross-start edge of the line.  */
.u-flex--align-self-baseline {
  align-self: baseline !important;
}

/*  Flex items are stretched such as the cross-size of the item's margin box is
    the same as the line while respecting width and height constraints.  */
.u-flex--align-self-stretch {
  align-self: stretch !important;
}

/*
    WRAPPING -------------------------------------------------------------------
    Summary:   specifies whether flex items are forced into a single line or can
               be wrapped onto multiple lines. If wrapping is allowed, this property
               also enables you to control the direction in which lines are stacked.
    Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/flex-wrap
    Default:   flex-wrap: nowrap !important;
*/
.u-flex--no-wrap {
  flex-wrap: nowrap !important;
}

.u-flex--reverse-wrap {
  flex-wrap: wrap-reverse !important;
}

.u-flex--wrap {
  flex-wrap: wrap !important;
}

/*
    VISUAL ORDER ---------------------------------------------------------------
    Summary:   specifies the order used to lay out flex items in their flex container.
               Elements are laid out in the ascending order of the order value.
               Elements with the same order value are laid out in the order in
               which they appear in the source code.
    Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/order
    Default:   order: 0 !important; { no order }
*/
.u-flex--order-first {
  order: -1 !important;
}

.u-flex--order-one {
  order: 1 !important;
}

.u-flex--order-two {
  order: 2 !important;
}

.u-flex--order-three {
  order: 3 !important;
}

/*
 *  Utilities: Hide
 *  ---
 *  Set of helper classes to hide content in various ways
 */
/**
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */
.u-hidden-visually {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
}

/**
 * Hide visually and from screen readers.
 */
.u-hidden {
  display: none !important;
}

/*
 *  Utilities: Icon colors
 *  ---
 *  Icon fill color helper classes
 */
/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-base {
  fill: #000;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-base-light {
  fill: #e6e6e6;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-base {
  fill: #000;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-base-base {
  fill: #000;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-base {
  fill: #000;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-base-dark {
  fill: black;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-neutral {
  fill: #bbc3c9;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-neutral-light {
  fill: #e6e6e6;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-neutral {
  fill: #bbc3c9;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-neutral-base {
  fill: #bbc3c9;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-neutral {
  fill: #bbc3c9;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-neutral-dark {
  fill: #4d4d4d;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-accent {
  fill: #da291c;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-accent-light {
  fill: #e05b52;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-accent {
  fill: #da291c;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-accent-base {
  fill: #da291c;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-accent {
  fill: #da291c;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-accent-dark {
  fill: #b30c00;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-error {
  fill: #b25055;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-error-light {
  fill: #e05259;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-error {
  fill: #b25055;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-error-base {
  fill: #b25055;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-error {
  fill: #b25055;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-error-dark {
  fill: #b30009;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-success {
  fill: #559947;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-success-light {
  fill: #6ae052;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-success {
  fill: #559947;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-success-base {
  fill: #559947;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-success {
  fill: #559947;
}

/**
 * icon color classes (e.g.: u-icon-color-white)
 */
.u-icon-color-success-dark {
  fill: #27661a;
}

/**
 * Set icon to current color value
 */
.u-icon-currentColor {
  fill: currentColor !important;
}

/*
 *  Utilities: Opacity
 *  ---
 *  Utility classes for opacity levels
 */
.u-opacity-0 {
  opacity: 0 !important;
}

.u-opacity-25 {
  opacity: 0.25 !important;
}

.u-opacity-50 {
  opacity: 0.5 !important;
}

.u-opacity-75 {
  opacity: 0.75 !important;
}

.u-opacity-100 {
  opacity: 1 !important;
}

/*
 *  Utilities: Padding
 *  ---
 *  Utility classes for padding
 */
.u-padding-tb-20 {
  padding: 20px 0;
}

.u-padding-tb-40 {
  padding: 40px 0;
}

.u-padding-tb-60 {
  padding: 60px 0;
}
@media screen and (max-width: 768px) {
  .u-padding-tb-60 {
    padding: 3rem 0;
  }
}

.u-padding-tb-80 {
  padding: 80px 0;
}

.u-padding-tb-100 {
  padding: 100px 0;
}

.u-pos-fit,
.u-pos-absolute-center,
.u-pos-absolute {
  position: absolute !important;
}

/**
 * Element will be centered to its nearest relatively-positioned
 * ancestor.
 */
.u-pos-fixed-center,
.u-pos-absolute-center {
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
}

.u-pos-fit,
.u-pos-fullscreen {
  bottom: 0 !important;
  left: 0 !important;
  margin: auto !important;
  right: 0 !important;
  top: 0 !important;
}

/**
 * 1. Make sure fixed elements are promoted into a new layer, for performance
 *    reasons.
 */
.u-pos-fullscreen,
.u-pos-fixed-center,
.u-pos-fixed {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  /* 1 */
  position: fixed !important;
}

.u-pos-relative {
  position: relative !important;
}

.u-pos-static {
  position: static !important;
}

.u-center-block {
  display: block !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Pull left / right
 * To be used in combination with clearfix on parent
 */
.u-pull-left {
  float: left;
}

.u-pull-right {
  float: right;
}

/*
 *  Utilities: Skip links
 *  ---
 *  Theming for acessible skip links.
 */
.u-skip-link {
  position: absolute;
  top: -1000px;
  left: -1000px;
  height: 1px;
  width: 1px;
  text-align: left;
  overflow: hidden;
  background-color: white;
}

a.u-skip-link:active,
a.u-skip-link:focus,
a.u-skip-link:hover {
  left: 0;
  top: 0;
  width: auto;
  height: auto;
  overflow: visible;
}

/**
 * Word breaking
 *
 * Break strings when their length exceeds the width of their container.
 */
.u-text-break {
  word-wrap: break-word !important;
}

/**
 * Prevent whitespace wrapping
 */
.u-text-no-wrap {
  white-space: nowrap !important;
}

/**
 * Text truncation
 *
 * Prevent text from wrapping onto multiple lines, and truncate with an
 * ellipsis.
 *
 * 1. Ensure that the node has a maximum width after which truncation can
 *    occur.
 * 2. Fix for IE 8/9 if `word-wrap: break-word` is in effect on ancestor
 *    nodes.
 */
.u-text-truncate {
  max-width: 100%;
  /* 1 */
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  word-wrap: normal !important;
  /* 2 */
}

/**
 * Horizontal text alignment
 */
.u-text-justify {
  text-align: justify !important;
}

.u-text-nowrap {
  white-space: nowrap !important;
}

.u-text-align-left {
  text-align: left !important;
}

.u-text-align-center {
  text-align: center !important;
}

.u-text-align-right {
  text-align: right !important;
}

/**
 * Text transformation
 */
.u-text-lowercase {
  text-transform: lowercase !important;
}

.u-text-uppercase {
  text-transform: uppercase !important;
}

.u-text-capitalize {
  text-transform: capitalize !important;
}

.u-text-strike {
  text-decoration: line-through !important;
}

/**
 * Text weights & italics
 */
.u-font-weight-normal {
  font-weight: normal;
}

.u-font-weight-bold {
  font-weight: bold;
}

.u-font-italic {
  font-style: italic;
}
/*# sourceMappingURL=main.css.map */
