@charset "UTF-8";
@font-face {
  font-family: "GT Super Display";
  src: url("../fonts/GTSuperDisplay-Bold.woff2") format("woff2"), url("../fonts/GTSuperDisplay-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "GT Walsheim Pro";
  src: url("../fonts/GTWalsheimProRegular.woff2") format("woff2"), url("../fonts/GTWalsheimProRegular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "GT Super Text Book";
  src: url("../fonts/GTSuperText-Book.woff2") format("woff2"), url("../fonts/GTSuperText-Book.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "GT Walsheim Pro";
  src: url("../fonts/GTWalsheimProBold.woff2") format("woff2"), url("../fonts/GTWalsheimProBold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
}
@keyframes arrow-pulse-down {
  0% {
    transform: translate(0, -50px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    transform: translate(0, 0px);
    opacity: 0;
  }
}
@keyframes arrow-pulse {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    opacity: 1;
  }
  90% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
/* ACF
none : none
fadeIn : fadeIn
fadeInLeft : fadeInLeft
fadeInRight : fadeInRight
fadeInUp : fadeInUp
fadeInDown : fadeInDown
fadeInStagger : fadeInStagger
*/
/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
/* Document
   ========================================================================== */
html {
  font-family: sans-serif; /* 1 */
  line-height: 1.15; /* 2 */
  -ms-text-size-adjust: 100%; /* 3 */
  -webkit-text-size-adjust: 100%; /* 3 */
}

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

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

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

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main { /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

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

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

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0;
}

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

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

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

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

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

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

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

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

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

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

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button; /* 2 */
}

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

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

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

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

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

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

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

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

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

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

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

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block;
}

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

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

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

/**************************\
  Basic Modal Styles
\**************************/
.modal {
  font-family: -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif;
}

.modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 20000;
}

.modal__container {
  background-color: #fff;
  max-width: 600px;
  max-height: 100vh;
  overflow-y: auto;
  box-sizing: border-box;
  position: relative;
}

.modal__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.modal__title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.25rem;
  padding-bottom: 1rem;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  line-height: 1.25;
  color: #b8c950;
  box-sizing: border-box;
}

.modal__close {
  background: transparent;
  border: 0;
  position: absolute;
  z-index: 9999;
  top: 2rem;
  right: 2rem;
}
@media only screen and (max-width: 419px) {
  .modal__close {
    background: #ffffff;
  }
}
.modal__close:before {
  content: "✕";
  padding: 0.25rem 0.65rem;
  transition: 0.33s all;
  display: inline-block;
}
.modal__close:hover:before {
  transform: rotate(180deg);
}
.modal__close:focus:before {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
.modal__close:active:before {
  transform: rotate(180deg) scale(0.8);
}

.modal__content {
  line-height: 1.5;
  color: #1d191a;
  display: flex;
}
@media only screen and (max-width: 419px) {
  .modal__content {
    flex-direction: column;
  }
}
.modal__content .headline_image {
  max-width: 220px;
  margin-bottom: 1rem;
}

.modal__text {
  width: 60%;
  padding: 3rem 1.5rem;
}
@media only screen and (max-width: 419px) {
  .modal__text {
    width: 100%;
    padding: 1rem;
  }
}
.modal__text .modal__description a {
  text-decoration: none;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  transition: 0.33s all;
  color: inherit;
  position: relative;
}
.modal__text .modal__description a:hover {
  text-decoration: underline;
  color: #b8c950;
}

.modal__btn {
  font-size: 0.875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  background-color: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  border-radius: 0.25rem;
  border-style: none;
  border-width: 0;
  cursor: pointer;
  -webkit-appearance: button;
  text-transform: none;
  overflow: visible;
  line-height: 1.15;
  margin: 0;
  will-change: transform;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  transition: -webkit-transform 0.25s ease-out;
  transition: transform 0.25s ease-out;
  transition: transform 0.25s ease-out, -webkit-transform 0.25s ease-out;
}

.modal__btn:focus, .modal__btn:hover {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.modal__btn-primary {
  background-color: #00449e;
  color: #fff;
}

/**************************\
  Demo Animation Style
\**************************/
@keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes mmslideIn {
  from {
    transform: translateY(15%);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes mmslideOut {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-10%);
  }
}
.micromodal-slide {
  display: none;
}

.micromodal-slide.is-open {
  display: block;
}

.micromodal-slide[aria-hidden=false] .modal__overlay {
  animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=false] .modal__container {
  animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=true] .modal__overlay {
  animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=true] .modal__container {
  animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide .modal__container,
.micromodal-slide .modal__overlay {
  will-change: transform;
}

/**
 * Set up a decent box model on the root element
 */
html {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/**
 * Make all elements from the DOM inherit from the parent box-sizing
 * Since `*` has a specificity of 0, it does not override the `html` value
 * making all elements inheriting from the root box-sizing value
 * See: https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
 */
*,
*::before,
*::after {
  box-sizing: inherit;
}

section {
  font-size: 0;
}

/**
 * Basic styles for links
 */
a {
  color: #dd4d4d;
  text-decoration: none;
  cursor: pointer;
}
a.underline {
  position: relative;
}
a.underline:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 100%;
  height: 1px;
  border-bottom: 1px dashed;
  color: inherit;
  opacity: 0.5;
  transition: 0.33s all;
}
a:hover.underline:after {
  opacity: 1;
  border-bottom: 1px solid;
}
a:focus.underline {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
img {
  width: 100%;
  max-width: auto;
}

[data-transition] {
  opacity: 0;
}

/**
 * Basic typography style for copy text
 */
body {
  color: #1d191a;
  font-size: 16px;
  line-height: 1.4;
  font-family: "GT Super Text Book", "Times New Roman", serif;
  font-weight: 300;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6, strong {
  margin: 0;
  padding: 0;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: bold;
}

h1 {
  font-size: 72px;
  font-size: 4.5rem;
  line-height: 1.1;
  letter-spacing: -4px;
}

h2 {
  font-size: 56px;
  font-size: 3.5rem;
  line-height: 1.125;
  letter-spacing: -3px;
}

h3 {
  font-size: 48px;
  font-size: 3rem;
  line-height: 1.071;
  letter-spacing: -3px;
}

h4 {
  font-size: 32px;
  font-size: 2rem;
  line-height: 1.056;
  letter-spacing: -2px;
}

h5 {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.167;
  letter-spacing: -1px;
}

p {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.5;
  letter-spacing: -1px;
  letter-spacing: -0.025em;
}
p a {
  text-decoration: underline;
  transition: 0.33s all;
}
p a:hover {
  background-color: #dd4d4d;
  color: #ffffff;
}

/**
 * Clear inner floats
 */
.clearfix::after {
  clear: both;
  content: "";
  display: table;
}

/**
 * Main content containers
 * 1. Make the container full-width with a maximum width
 * 2. Center it in the viewport
 * 3. Leave some space on the edges, especially valuable on small screens
 */
.container {
  max-width: 1200px; /* 1 */
  margin-left: auto; /* 2 */
  margin-right: auto; /* 2 */
  width: 100%; /* 1 */
}

/**
 * Hide text while making it readable for screen readers
 * 1. Needed in WebKit-based browsers because of an implementation bug;
 *    See: https://code.google.com/p/chromium/issues/detail?id=457146
 */
.hide-text {
  overflow: hidden;
  padding: 0; /* 1 */
  text-indent: 101%;
  white-space: nowrap;
}

/**
 * Hide element while making it readable for screen readers
 * Shamelessly borrowed from HTML5Boilerplate:
 * https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css#L119-L133
 */
.visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

nav.main-navigation {
  position: fixed;
  z-index: 9999;
  top: 2rem;
  width: calc(100% - 4rem);
  max-width: 1600px;
  left: 50%;
  transform: translate(-50%, 0);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 2rem;
  background-color: #ffffff;
  box-shadow: rgba(26, 28, 26, 0.04) 0px 8px 16px;
  transition: 0.33s top;
}
nav.main-navigation.banner-active {
  top: 3rem;
}
@media only screen and (max-width: 767px) {
  nav.main-navigation {
    padding: 0.5rem;
    width: calc(100% - 2rem);
    top: 1rem;
  }
  nav.main-navigation.banner-active {
    top: 3rem;
  }
}
@media only screen and (max-width: 320px) {
  nav.main-navigation.banner-active {
    top: 3.5rem;
  }
}
nav.main-navigation.js-hide {
  top: -120px;
}
nav.main-navigation .logo {
  width: 140px;
}
nav.main-navigation .logo a {
  border: 0;
  position: relative;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.33s all;
}
nav.main-navigation .logo a img {
  height: auto;
  width: 100%;
  transition: 0.33s all;
  display: inline-block;
}
nav.main-navigation .logo a img.colour {
  z-index: 2;
  position: absolute;
  opacity: 0;
}
nav.main-navigation .logo a img.base {
  opacity: 1;
  z-index: 1;
  position: relative;
}
nav.main-navigation .logo a:hover img.colour, nav.main-navigation .logo a:focus img.colour {
  opacity: 1;
}
nav.main-navigation .logo a:hover img.base, nav.main-navigation .logo a:focus img.base {
  opacity: 0;
}
nav.main-navigation .logo a:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
nav.main-navigation .logo a:active:focus {
  transform: scale(0.9);
  box-shadow: none;
  outline: none;
}
nav.main-navigation .desktop {
  width: 60%;
  max-width: 500px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  transition: 0.33s all;
  opacity: 1;
}
nav.main-navigation .desktop li {
  display: flex;
  align-items: center;
}
nav.main-navigation .desktop li a {
  border: 0;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  color: #1d191a;
  position: relative;
  padding: 1rem 0.75rem;
}
nav.main-navigation .desktop li a:after {
  content: "";
  position: absolute;
  width: calc(100% - 1.5rem);
  height: 3px;
  transition: 0.33s all;
  left: 50%;
  transform: translateX(-50%);
  bottom: -1rem;
  opacity: 0;
}
nav.main-navigation .desktop li a:hover {
  text-decoration: none;
}
nav.main-navigation .desktop li a:hover:after {
  opacity: 1;
  bottom: 0.25rem;
}
nav.main-navigation .desktop li a.js-active {
  font-weight: 600;
}
nav.main-navigation .desktop li a.js-active:after {
  opacity: 1;
  bottom: 0.25rem;
}
nav.main-navigation .desktop li a:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
nav.main-navigation .desktop li a:focus:after {
  opacity: 0;
}
nav.main-navigation .desktop li a:active:focus, nav.main-navigation .desktop li a:active {
  box-shadow: none;
  outline: none;
}
nav.main-navigation .desktop li a:active:focus:after, nav.main-navigation .desktop li a:active:after {
  opacity: 1;
  bottom: 0.5rem;
}
nav.main-navigation .desktop li:nth-child(1) a:after {
  background-color: #8cd0e8;
}
nav.main-navigation .desktop li:nth-child(2) a:after {
  background-color: #dd4d4d;
}
nav.main-navigation .desktop li:nth-child(3) a:after {
  background-color: #e0a2c5;
}
nav.main-navigation .desktop li:nth-child(4) a:after {
  background-color: #eacc4a;
}
nav.main-navigation .desktop li:nth-child(5) a:after {
  background-color: #b8c950;
}
nav.main-navigation .desktop li:nth-child(6) a {
  color: #dd4d4d;
}
nav.main-navigation .desktop li:nth-child(6) a:after {
  background-color: #dd4d4d;
}
nav.main-navigation .desktop.js-hide {
  opacity: 0;
  pointer-events: none;
}
nav.main-navigation .mobile {
  display: none;
  border: 0;
  background: none;
  padding: 0;
  margin: 0;
}
nav.main-navigation .contact {
  width: 116px;
  text-align: right;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  position: relative;
  z-index: 3;
  transition: 0.33s all;
}
nav.main-navigation .contact a {
  display: inline-block;
  color: #1d191a;
  padding: 0.5rem 1.5rem;
  border: 2px solid #eacc4a;
  font-weight: bold;
  position: relative;
  z-index: 2;
  transition: 0.33s all;
}
nav.main-navigation .contact a:hover {
  text-decoration: none;
}
nav.main-navigation .contact a:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
  background-color: #eacc4a;
}
nav.main-navigation .contact a:active {
  border: 2px solid #ddbb1c;
  background-color: #ddbb1c;
  box-shadow: none;
  outline: none;
}
nav.main-navigation .contact:after {
  content: "";
  position: absolute;
  width: 0%;
  height: 100%;
  background-color: #eacc4a;
  top: 0;
  left: 0;
  transition: 0.33s all;
  z-index: 1;
}
nav.main-navigation .contact:hover {
  cursor: pointer;
}
nav.main-navigation .contact:hover:after {
  width: 100%;
}
nav.main-navigation .contact.js-hide {
  opacity: 0;
  pointer-events: none;
}
@media only screen and (max-width: 887px) {
  nav.main-navigation .desktop {
    display: none;
  }
  nav.main-navigation .mobile {
    display: flex;
  }
  nav.main-navigation .logo {
    order: 1;
  }
  nav.main-navigation .mobile {
    order: 3;
  }
  nav.main-navigation .contact {
    display: none;
    order: 2;
  }
}

nav.mobile-navigation {
  position: fixed;
  z-index: 10002;
  width: 100vw;
  height: 100vh;
  background-color: #ffffff;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  top: 0;
  left: 100%;
  transition: 0.33s all;
}
nav.mobile-navigation.js-active {
  left: 0;
}
nav.mobile-navigation .top {
  display: flex;
  justify-content: center;
  padding: 1rem;
}
nav.mobile-navigation .top a {
  border-bottom: 0;
  letter-spacing: -0.05em;
}
nav.mobile-navigation .top a img {
  max-width: 32px;
}
nav.mobile-navigation .top button {
  font-size: 2rem;
  padding: 0;
  width: 24px;
  border: 0;
  background: transparent;
  position: absolute;
  right: 1.5rem;
  top: 1rem;
}
nav.mobile-navigation .menu li {
  text-align: center;
  font-size: 10vw;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: bold;
  margin-bottom: 2.5vw;
}
@media only screen and (max-width: 887px) {
  nav.mobile-navigation .menu li {
    font-size: 65px;
    margin-bottom: 1.5vw;
  }
}
@media only screen and (max-width: 559px) {
  nav.mobile-navigation .menu li {
    font-size: 10vw;
    margin-bottom: 2.5vw;
  }
}
nav.mobile-navigation .menu li a {
  border-bottom: 0;
  transition: 0.33s all;
  position: relative;
  display: inline-block;
}
nav.mobile-navigation .menu li a:hover {
  text-decoration: none;
}
nav.mobile-navigation .menu li a:active {
  transform: scale(0.8);
}
nav.mobile-navigation .menu li a.js-active {
  text-decoration: underline;
}
nav.mobile-navigation .menu li:nth-child(1) a {
  color: #8cd0e8;
}
nav.mobile-navigation .menu li:nth-child(2) a {
  color: #dd4d4d;
}
nav.mobile-navigation .menu li:nth-child(3) a {
  color: #e0a2c5;
}
nav.mobile-navigation .menu li:nth-child(4) a {
  color: #eacc4a;
}
nav.mobile-navigation .menu li:nth-child(5) a {
  color: #b8c950;
}
nav.mobile-navigation .menu li:nth-child(6) a {
  color: #dd4d4d;
}
nav.mobile-navigation .menu li:nth-child(7) a {
  color: #1d191a;
}
nav.mobile-navigation .menu li:last-child {
  margin-bottom: 0;
}
nav.mobile-navigation .menu li:last-child a {
  color: #1d191a;
}
nav.mobile-navigation .social {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  margin-top: 3rem;
  margin-bottom: 4rem;
}
nav.mobile-navigation .social a {
  margin-right: 2.5rem;
  width: 36px;
  border-bottom: 0;
}
nav.mobile-navigation .social a svg {
  width: 100%;
}
nav.mobile-navigation .social a:last-child {
  margin-right: 0;
}

header.website-banner {
  background-color: #eacc4a;
  text-align: center;
  padding: 0.5rem;
  position: fixed;
  z-index: 9998;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 1;
  transition: 0.33s all;
}
header.website-banner p {
  color: #1d191a;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-size: 1rem;
}
header.website-banner p a {
  color: #1d191a;
  text-decoration: underline;
}
@media only screen and (max-width: 767px) {
  header.website-banner p {
    font-size: 0.75rem;
  }
}
header.website-banner.hide {
  opacity: 0;
  pointer-events: none;
}

#skip_button {
  position: absolute;
  z-index: 20000;
  padding: 1rem;
  border: none;
  background: #ffffff;
  font-weight: 600;
  top: 0;
  left: 1rem;
  transform: translateY(-100%);
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
}
#skip_button:focus {
  transform: translateY(0%);
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
  top: 1rem;
}

#footer section.pre-footer {
  display: flex;
  width: 100%;
  max-width: calc(1200px + 4rem);
  margin: 0 auto;
  padding: 7.5rem 2rem 4.375rem;
}
#footer section.pre-footer .copy {
  width: 50%;
  font-size: 1.25rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
#footer section.pre-footer .copy h2 {
  font-size: 48px;
  font-size: 3rem;
  line-height: 1.071;
  letter-spacing: -3px;
  margin-bottom: 1.5rem;
}
#footer section.pre-footer .copy h3 {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.167;
  letter-spacing: -1px;
  margin-bottom: 2rem;
}
#footer section.pre-footer .copy .email, #footer section.pre-footer .copy .phone, #footer section.pre-footer .copy .location, #footer section.pre-footer .copy div {
  margin-bottom: 1.5rem;
}
#footer section.pre-footer .copy .email.mobile, #footer section.pre-footer .copy .phone.mobile, #footer section.pre-footer .copy .location.mobile, #footer section.pre-footer .copy div.mobile {
  display: none;
}
#footer section.pre-footer .copy .phone.desktop {
  text-decoration: none;
  border-bottom: 0;
  cursor: default;
}
#footer section.pre-footer .copy .address {
  margin-bottom: 0.75rem;
}
#footer section.pre-footer .copy .location {
  padding-right: 22px;
  position: relative;
}
#footer section.pre-footer .copy .location .arrow {
  position: absolute;
  right: 0;
  height: 100%;
  width: 16px;
  top: 0;
  overflow: hidden;
}
#footer section.pre-footer .copy .location .arrow svg {
  width: 12px;
  height: 12px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  transition: 0.33s all;
}
#footer section.pre-footer .copy .location .arrow svg:nth-child(2) {
  transform: translate(0, 250%);
}
#footer section.pre-footer .copy .location:hover .arrow svg:nth-child(1) {
  transform: translate(0, -300%);
}
#footer section.pre-footer .copy .location:hover .arrow svg:nth-child(2) {
  transform: translate(0, -50%);
}
#footer section.pre-footer .f-logo {
  display: none;
}
#footer section.post-footer {
  width: 100%;
  background-color: #ffffff;
}
#footer section.post-footer .wrapper {
  width: 100%;
  max-width: calc(1200px + 4rem);
  margin: 0 auto;
  font-size: 1.25rem;
  display: flex;
  align-items: center;
  padding: 0 2rem;
}
#footer section.post-footer .wrapper .logo {
  width: 50%;
  padding: 2rem 0;
}
#footer section.post-footer .wrapper .logo img {
  max-width: 40%;
  width: 180px;
}
#footer section.post-footer .wrapper .logo img:nth-child(2) {
  margin-left: 2rem;
}
@media only screen and (max-width: 419px) {
  #footer section.post-footer .wrapper .logo img:nth-child(2) {
    margin-left: 0;
    margin-top: 1rem;
  }
}
#footer section.post-footer .wrapper .f-logo {
  width: 50%;
  position: relative;
  padding: 2.625rem 0;
  display: flex;
}
#footer section.post-footer .wrapper .f-logo > img {
  opacity: 0;
  max-width: 180px;
}
#footer section.post-footer .wrapper .f-logo > svg {
  position: absolute;
  width: 80%;
  bottom: 0;
  left: 0;
}
#footer section.post-footer .wrapper .f-logo .social {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  width: auto;
  height: 44px;
  display: flex;
}
#footer section.post-footer .wrapper .f-logo .social a {
  font-size: 0;
  border: 0;
  margin: 0 0.5rem;
  padding: 0.5rem;
  height: 44px;
}
#footer section.post-footer .wrapper .f-logo .social a .icons {
  width: 28px;
  height: 28px;
  position: relative;
  overflow: hidden;
  transition: 0.33s all;
}
#footer section.post-footer .wrapper .f-logo .social a .icons .icon {
  width: 100%;
  height: 300%;
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  transition: 0.33s all;
}
#footer section.post-footer .wrapper .f-logo .social a .icons .icon svg {
  width: 28px;
  height: 28px;
}
#footer section.post-footer .wrapper .f-logo .social a:hover .icons .icon {
  top: -200%;
}
#footer section.post-footer .wrapper .f-logo .social a:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
#footer section.post-footer .wrapper .f-logo .social a:active .icons, #footer section.post-footer .wrapper .f-logo .social a:active:focus .icons {
  transform: scale(0.8);
}
@media only screen and (max-width: 639px) {
  #footer section.pre-footer {
    flex-direction: column;
    padding: 4rem 2rem;
  }
  #footer section.pre-footer .copy {
    width: 100%;
  }
  #footer section.pre-footer .copy .phone {
    margin-bottom: 0;
  }
  #footer section.pre-footer .copy .phone.desktop {
    display: none;
  }
  #footer section.pre-footer .copy .phone.mobile {
    display: inline-block;
  }
  #footer section.pre-footer .f-logo {
    display: flex;
    display: none;
    width: 100%;
    padding-top: 2rem;
    justify-content: center;
  }
  #footer section.pre-footer .f-logo svg {
    width: 50%;
  }
  #footer section.post-footer .wrapper {
    flex-direction: column;
    justify-content: center;
  }
  #footer section.post-footer .wrapper .logo {
    text-align: center;
    width: 100%;
    padding: 3rem 1rem 1.5rem;
  }
  #footer section.post-footer .wrapper .logo img {
    max-width: 140px;
  }
  #footer section.post-footer .wrapper .f-logo {
    padding: 1.5rem 1rem 3rem;
    position: relative;
    width: 100%;
    justify-content: center;
  }
  #footer section.post-footer .wrapper .f-logo > img, #footer section.post-footer .wrapper .f-logo > svg {
    display: none;
  }
  #footer section.post-footer .wrapper .f-logo .social {
    position: relative;
    top: auto;
    right: auto;
    transform: none;
    width: 220px;
    justify-content: space-between;
  }
}

.not-found {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.not-found .wrapper {
  margin: 16rem 1rem 10rem;
  max-width: 800px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.not-found .wrapper .image {
  max-width: 400px;
  margin: 0 auto;
  margin-bottom: 6rem;
}
.not-found .wrapper .copy {
  text-align: center;
}
.not-found .wrapper .copy p {
  margin-bottom: 1rem;
}
.not-found .wrapper .copy a {
  font-size: 1.5rem;
  padding-right: 24px;
  position: relative;
}
.not-found .wrapper .copy a svg {
  position: absolute;
  right: 0;
  top: 50%;
  width: 12px;
  height: 12px;
  transform: translate(0, -50%);
}

.background-image-two-column {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.background-image-two-column .content {
  margin: 12.5% auto 10%;
  max-width: 1080px;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
}
.background-image-two-column .content .column {
  width: 50%;
  padding: 0 1rem;
}
.background-image-two-column .content .column img {
  width: auto;
}
.background-image-two-column .content .column h2 {
  font-size: 2rem;
  line-height: 1.056;
  letter-spacing: -2px;
}
.background-image-two-column .content .column h2, .background-image-two-column .content .column h3, .background-image-two-column .content .column h4, .background-image-two-column .content .column h5 {
  margin-bottom: 1rem;
  line-height: 1.2;
}
@media only screen and (max-width: 1024px) {
  .background-image-two-column .content {
    margin: 20% auto 10%;
    width: 750px;
  }
}
@media only screen and (max-width: 768px) {
  .background-image-two-column .content {
    margin: 30% auto 15%;
    width: 100%;
  }
  .background-image-two-column .content .column {
    width: 100%;
    padding: 2rem;
  }
}

section.hero {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  position: relative;
  background-color: #f3f3f3;
}
section.hero .transition-wrap {
  display: flex;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 5;
  background-color: #f3f3f3;
}
section.hero .transition-wrap .copy {
  display: flex;
  width: 76%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 0 2rem;
  flex-direction: column;
  text-align: left;
  align-items: flex-start;
  justify-content: center;
}
section.hero .transition-wrap .copy h1, section.hero .transition-wrap .copy h2, section.hero .transition-wrap .copy h3, section.hero .transition-wrap .copy h4, section.hero .transition-wrap .copy h5, section.hero .transition-wrap .copy h6, section.hero .transition-wrap .copy p {
  width: 100%;
}
section.hero .transition-wrap .copy .description {
  max-width: 460px;
  width: 50%;
}
section.hero .transition-wrap .copy h1, section.hero .transition-wrap .copy h2, section.hero .transition-wrap .copy h3, section.hero .transition-wrap .copy h4, section.hero .transition-wrap .copy h5, section.hero .transition-wrap .copy h6 {
  margin-bottom: 1.5rem;
}
section.hero .transition-wrap .copy h1 {
  font-size: 5vw;
}
section.hero .image {
  width: 100%;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
section.hero .image .top {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  z-index: 3;
  width: 100%;
  height: auto;
}
section.hero .image .mask {
  position: relative;
  z-index: 2;
  width: 100%;
  height: auto;
}
section.hero .image .mask svg {
  width: 100%;
  height: auto;
}
section.hero .image .bottom {
  position: absolute !important;
  z-index: 1;
  width: 100%;
  height: 100%;
  top: 0;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
}
section.hero .chevron {
  position: fixed;
  width: 100%;
  bottom: 1rem;
  z-index: 9997;
  transition: 0.33s all;
}
section.hero .chevron .wrapper {
  margin: 0 auto;
  width: 24px;
}
section.hero .chevron .wrapper svg {
  width: 100%;
  height: auto;
  opacity: 0;
}
section.hero .chevron .wrapper svg:nth-child(1) {
  animation: arrow-pulse 2.33s ease-out infinite;
}
section.hero .chevron .wrapper svg:nth-child(2) {
  animation: arrow-pulse 2.33s ease-out infinite;
  animation-delay: 0.33s;
}
section.hero .chevron .wrapper svg:nth-child(3) {
  animation: arrow-pulse 2.33s ease-out infinite;
  animation-delay: 0.66s;
}
section.hero .chevron.js-hide {
  opacity: 0;
  pointer-events: none;
}
section.hero .corner-banner {
  position: absolute;
  z-index: 10;
  bottom: 0;
  left: 0;
  width: 25%;
  max-width: 399px;
  min-width: 240px;
}
@media only screen and (max-width: 767px) {
  section.hero {
    padding-bottom: 50px;
  }
  section.hero .transition-wrap {
    flex-direction: column;
    position: relative;
    padding-top: 120px;
    padding-bottom: 2rem;
  }
  section.hero .transition-wrap .copy {
    width: 100%;
    position: relative;
    top: auto;
    left: auto;
    transform: none;
  }
  section.hero .transition-wrap .copy h1 {
    font-size: 3rem;
  }
  section.hero .transition-wrap .copy p {
    width: 100%;
  }
  section.hero .image .bottom {
    display: block;
  }
  section.hero .image .bottom .parallax__container .parallax {
    margin-top: -50%;
  }
}
@media only screen and (min-width: 768px) {
  section.hero .transition-wrap {
    background-color: transparent;
  }
}

section.hero-shape {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  position: relative;
  justify-content: center;
  height: 90vh;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.single-job section.hero-shape {
  height: 78vh;
}
@media only screen and (max-width: 639px) {
  .single-job section.hero-shape {
    height: 50vh;
  }
  .single-job section.hero-shape .content {
    height: auto;
  }
}
section.hero-shape div.spacer {
  height: 120px;
  width: 100%;
}
section.hero-shape .transition-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
}
section.hero-shape .content {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 10rem 0;
  position: relative;
  overflow: hidden;
}
section.hero-shape .content .copy {
  display: flex;
  width: 50%;
  max-width: 860px;
  flex-direction: column;
  text-align: center;
  align-items: center;
  justify-content: center;
  z-index: 2;
}
section.hero-shape .content .copy h1, section.hero-shape .content .copy h2, section.hero-shape .content .copy h3, section.hero-shape .content .copy h4, section.hero-shape .content .copy h5, section.hero-shape .content .copy h6, section.hero-shape .content .copy p {
  width: 100%;
}
section.hero-shape .content .copy .description {
  margin-top: 1rem;
  max-width: 640px;
  width: 90%;
}
section.hero-shape .content .image {
  position: absolute;
  width: 80%;
  height: auto;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
section.hero-shape .content .image img {
  width: 100%;
}
section.hero-shape .mobile_copy {
  display: none;
}
section.hero-shape .chevron {
  position: fixed;
  width: 100%;
  bottom: 2rem;
  z-index: 9997;
  transition: 0.33s all;
}
section.hero-shape .chevron .wrapper {
  margin: 0 auto;
  width: 24px;
}
section.hero-shape .chevron .wrapper svg {
  width: 100%;
  height: auto;
  opacity: 0;
}
section.hero-shape .chevron .wrapper svg:nth-child(1) {
  animation: arrow-pulse 2.33s ease-out infinite;
}
section.hero-shape .chevron .wrapper svg:nth-child(2) {
  animation: arrow-pulse 2.33s ease-out infinite;
  animation-delay: 0.33s;
}
section.hero-shape .chevron .wrapper svg:nth-child(3) {
  animation: arrow-pulse 2.33s ease-out infinite;
  animation-delay: 0.66s;
}
section.hero-shape .chevron.js-hide {
  opacity: 0;
  pointer-events: none;
}
@media only screen and (max-width: 1023px) {
  section.hero-shape .content .copy {
    width: 80%;
  }
}
@media only screen and (max-width: 639px) {
  section.hero-shape {
    height: auto;
  }
  section.hero-shape .content {
    padding: 0 2rem;
    height: 420px;
  }
  section.hero-shape .content .copy {
    width: 100%;
  }
  section.hero-shape .content .copy h1 {
    font-size: 3.25rem;
  }
  section.hero-shape .content .copy p {
    display: none;
    position: absolute;
    bottom: 0;
  }
  section.hero-shape .content .image {
    width: 40%;
  }
  section.hero-shape .mobile_copy {
    display: block;
    position: relative;
    padding: 0 2rem 6rem 2rem;
  }
  section.hero-shape .mobile_copy p {
    text-align: center;
  }
}

section.hero-image {
  display: flex;
  flex-direction: row;
  position: relative;
  justify-content: center;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #ffffff;
  height: 90vh;
  overflow: hidden;
}
section.hero-image .transition-wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 2;
  pointer-events: none;
}
section.hero-image .copy {
  position: absolute;
  display: flex;
  width: 50%;
  flex-direction: column;
  text-align: center;
  align-items: center;
  justify-content: center;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
section.hero-image .copy h1, section.hero-image .copy p {
  width: 100%;
}
section.hero-image .copy h1, section.hero-image .copy h2, section.hero-image .copy h3, section.hero-image .copy h4, section.hero-image .copy h5, section.hero-image .copy h6 {
  margin-bottom: 1.25rem;
}
section.hero-image .copy .description {
  max-width: 770px;
}
section.hero-image .image {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
}
section.hero-image .logos {
  width: 90%;
  max-width: 1440px;
  height: auto;
  display: grid;
  grid-auto-flow: column;
  justify-content: center;
  align-items: center;
  gap: 12px;
  bottom: 24px;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0);
}
section.hero-image .logos img {
  width: 100%;
}
section.hero-image .chevron {
  position: absolute;
  width: 100%;
  bottom: 2rem;
  z-index: 9997;
  transition: 0.33s all;
}
section.hero-image .chevron .wrapper {
  margin: 0 auto;
  width: 24px;
}
section.hero-image .chevron .wrapper svg {
  width: 100%;
  height: auto;
  opacity: 0;
}
section.hero-image .chevron .wrapper svg:nth-child(1) {
  animation: arrow-pulse 2.33s ease-out infinite;
}
section.hero-image .chevron .wrapper svg:nth-child(2) {
  animation: arrow-pulse 2.33s ease-out infinite;
  animation-delay: 0.33s;
}
section.hero-image .chevron .wrapper svg:nth-child(3) {
  animation: arrow-pulse 2.33s ease-out infinite;
  animation-delay: 0.66s;
}
section.hero-image .chevron.js-hide {
  opacity: 0;
  pointer-events: none;
}
section.hero-image .corner-banner {
  position: absolute;
  z-index: 10;
  bottom: 0;
  left: 0;
  width: 25%;
  max-width: 260px;
  min-width: 240px;
}
section.hero-image .corner-banner img.hide {
  display: none;
}
@media only screen and (max-width: 639px) {
  section.hero-image {
    overflow: hidden;
    height: auto;
  }
  section.hero-image .copy {
    position: relative;
    width: 100%;
    padding: 2rem;
    top: auto;
    left: auto;
    transform: none;
    margin: 120px 0 3rem;
  }
  section.hero-image .copy h1, section.hero-image .copy h2, section.hero-image .copy h3, section.hero-image .copy h4, section.hero-image .copy h5, section.hero-image .copy h6 {
    margin-bottom: 3rem;
  }
  section.hero-image .copy h1 {
    font-size: 3.5rem;
  }
  section.hero-image .image {
    position: absolute;
    width: auto;
    height: 100%;
  }
  section.hero-image .image img {
    height: 100%;
    width: auto;
  }
}

section.hero-video {
  display: flex;
  flex-direction: row;
  position: relative;
  justify-content: center;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #ffffff;
  height: 90vh;
  overflow: hidden;
}
section.hero-video .transition-wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 2;
  pointer-events: none;
}
section.hero-video .copy {
  position: absolute;
  display: flex;
  width: 50%;
  flex-direction: column;
  text-align: center;
  align-items: center;
  justify-content: center;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: all;
}
section.hero-video .copy h1, section.hero-video .copy h2, section.hero-video .copy h3, section.hero-video .copy h4, section.hero-video .copy h5, section.hero-video .copy h6, section.hero-video .copy p {
  width: 100%;
}
section.hero-video .copy h1, section.hero-video .copy h2, section.hero-video .copy h3, section.hero-video .copy h4, section.hero-video .copy h5, section.hero-video .copy h6 {
  margin-bottom: 1.25rem;
}
section.hero-video .copy .description {
  max-width: 590px;
}
section.hero-video .copy .play-button {
  margin-top: 1rem;
  max-width: 108px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  z-index: 5;
  border-bottom: 0;
  background-color: #dd4d4d;
  opacity: 0.8;
  padding: 2rem;
  transition: 0.33s all;
  cursor: pointer;
  user-select: auto;
  -webkit-user-drag: auto;
}
section.hero-video .copy .play-button svg {
  max-width: 36px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  transition: 0.66s all;
  transform-origin: 40% 50%;
  pointer-events: none;
  cursor: pointer;
}
section.hero-video .copy .play-button span {
  font-size: 1.25rem;
  margin-top: 1rem;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: bold;
  text-align: center;
  color: #ffffff;
  pointer-events: none;
  cursor: pointer;
}
section.hero-video .copy .play-button:hover {
  opacity: 1;
}
section.hero-video .copy .play-button:hover svg {
  transform: rotate(360deg);
}
section.hero-video .copy .play-button:focus, section.hero-video .copy .play-button:active {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.hero-video .copy .play-button:active {
  background-color: #c1262e;
}
@media only screen and (max-width: 419px) {
  section.hero-video .copy .play-button {
    padding: 1.5rem 2rem 0.75rem;
    max-width: 90px;
  }
}
section.hero-video .logos {
  width: 90%;
  max-width: 1440px;
  height: auto;
  display: grid;
  grid-auto-flow: column;
  justify-content: center;
  align-items: center;
  gap: 12px;
  bottom: 24px;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0);
}
section.hero-video .logos img {
  width: 100%;
}
section.hero-video .bg-video {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}
section.hero-video .bg-video video {
  position: absolute;
  height: 100%;
  width: 177.77777778vh; /* 100 * 16 / 9 */
  min-width: 100%;
  min-height: 56.25vw; /* 100 * 9 / 16 */
  left: 50%; /* % of surrounding element */
  top: 50%;
  transform: translate(-50%, -50%); /* % of current element */
}
section.hero-video .bg-video:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.75);
}
section.hero-video .bg-video .video-controls {
  display: none;
  cursor: pointer;
  background-color: transparent;
  border: 0;
  z-index: 2;
  position: absolute;
  bottom: 1.5rem;
  right: 1.5rem;
  padding: 0;
  width: 32px;
  height: 32px;
  opacity: 0.75;
}
section.hero-video .bg-video .video-controls svg {
  width: 100%;
  height: auto;
}
section.hero-video .bg-video .video-controls.active {
  display: inline-block;
}
section.hero-video .bg-video .video-controls .play {
  display: none;
}
section.hero-video .bg-video .video-controls.paused .play {
  display: inline-block;
}
section.hero-video .bg-video .video-controls.paused .pause {
  display: none;
}
section.hero-video .bg-video .video-controls:hover {
  opacity: 1;
}
section.hero-video .bg-video .video-controls:focus, section.hero-video .bg-video .video-controls:active {
  opacity: 1;
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.hero-video .chevron {
  position: absolute;
  width: 100%;
  bottom: 2rem;
  z-index: 9997;
  transition: 0.33s all;
  pointer-events: none;
}
section.hero-video .chevron .wrapper {
  margin: 0 auto;
  width: 24px;
}
section.hero-video .chevron .wrapper svg {
  width: 100%;
  height: auto;
  opacity: 0;
}
section.hero-video .chevron .wrapper svg:nth-child(1) {
  animation: arrow-pulse 2.33s ease-out infinite;
}
section.hero-video .chevron .wrapper svg:nth-child(2) {
  animation: arrow-pulse 2.33s ease-out infinite;
  animation-delay: 0.33s;
}
section.hero-video .chevron .wrapper svg:nth-child(3) {
  animation: arrow-pulse 2.33s ease-out infinite;
  animation-delay: 0.66s;
}
section.hero-video .chevron.js-hide {
  opacity: 0;
  pointer-events: none;
}
section.hero-video .corner-banner {
  position: absolute;
  z-index: 10;
  bottom: 0;
  left: 0;
  width: 25%;
  max-width: 260px;
  min-width: 240px;
}
section.hero-video .corner-banner img.hide {
  display: none;
}
@media only screen and (max-width: 639px) {
  section.hero-video .copy {
    position: relative;
    width: 100%;
    padding: 2rem;
    top: auto;
    left: auto;
    transform: none;
    margin: 120px 0 3rem;
  }
  section.hero-video .copy h1 {
    font-size: 3.5rem;
  }
  section.hero-video .copy h1, section.hero-video .copy h2, section.hero-video .copy h3, section.hero-video .copy h4, section.hero-video .copy h5, section.hero-video .copy h6 {
    margin-bottom: 3rem;
  }
  section.hero-video .image {
    position: absolute;
    width: auto;
    height: 100%;
  }
  section.hero-video .image img {
    height: 100%;
    width: auto;
  }
}
@media only screen and (max-width: 479px) {
  section.hero-video {
    height: 600px;
  }
  section.hero-video .copy {
    padding: 0 1rem;
  }
  section.hero-video .copy h1, section.hero-video .copy h2, section.hero-video .copy h3, section.hero-video .copy h4, section.hero-video .copy h5, section.hero-video .copy h6 {
    margin-bottom: 1.5rem;
  }
}

section.half-width_tiles {
  padding: 10rem 2rem;
  text-align: center;
  width: 100%;
  background-color: #ffffff;
  margin: 0 auto;
}
section.half-width_tiles > h1, section.half-width_tiles > h2, section.half-width_tiles > h3, section.half-width_tiles > h4, section.half-width_tiles > h5, section.half-width_tiles > h6 {
  font-size: 3.5rem;
  line-height: 1.125;
  letter-spacing: -3px;
  margin-bottom: 2rem;
}
section.half-width_tiles > p {
  max-width: 800px;
  margin: 0 auto;
  margin-bottom: 2rem;
}
section.half-width_tiles > a.cta {
  font-size: 1.25rem;
  padding-right: 24px;
  position: relative;
  display: inline-block;
}
section.half-width_tiles > a.cta .arrow {
  position: absolute;
  right: 0;
  height: 100%;
  width: 16px;
  top: 0;
  overflow: hidden;
}
section.half-width_tiles > a.cta .arrow svg {
  width: 12px;
  height: 12px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  transition: 0.33s all;
}
section.half-width_tiles > a.cta .arrow svg:nth-child(2) {
  transform: translate(0, 250%);
}
section.half-width_tiles > a.cta:hover .arrow svg:nth-child(1) {
  transform: translate(0, -300%);
}
section.half-width_tiles > a.cta:hover .arrow svg:nth-child(2) {
  transform: translate(0, -50%);
}
@media only screen and (max-width: 767px) {
  section.half-width_tiles {
    padding: 4rem 2rem;
  }
  section.half-width_tiles > h1, section.half-width_tiles > h2, section.half-width_tiles > h3, section.half-width_tiles > h4, section.half-width_tiles > h5, section.half-width_tiles > h6 {
    font-size: 2.25rem;
    margin-bottom: 1.5rem;
  }
}
section.half-width_tiles .tiles {
  margin: 0 auto;
  margin-top: 6.25rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 1200px;
}
section.half-width_tiles .tiles .tile {
  width: calc(50% - 0.5rem);
  position: relative;
  margin-bottom: 1rem;
  border-bottom: 0;
  overflow: hidden;
  transition: 0.33s all;
}
section.half-width_tiles .tiles .tile h1, section.half-width_tiles .tiles .tile h2, section.half-width_tiles .tiles .tile h3, section.half-width_tiles .tiles .tile h4, section.half-width_tiles .tiles .tile h5, section.half-width_tiles .tiles .tile h6 {
  position: absolute;
  bottom: 2rem;
  left: 2rem;
  color: #ffffff;
  transition: 0.33s all;
  z-index: 3;
}
section.half-width_tiles .tiles .tile h1 svg, section.half-width_tiles .tiles .tile h2 svg, section.half-width_tiles .tiles .tile h3 svg, section.half-width_tiles .tiles .tile h4 svg, section.half-width_tiles .tiles .tile h5 svg, section.half-width_tiles .tiles .tile h6 svg {
  display: none;
}
section.half-width_tiles .tiles .tile img {
  width: 100%;
  transition: 0.33s all;
  z-index: 0;
}
section.half-width_tiles .tiles .tile img.mobile {
  display: none;
}
section.half-width_tiles .tiles .tile .cta {
  font-size: 1.25rem;
  position: absolute;
  bottom: 3rem;
  left: 2rem;
  opacity: 0;
  color: #ffffff;
  transition: 0.33s all;
  border-bottom: 1px dashed;
  padding-right: 24px;
  z-index: 2;
}
section.half-width_tiles .tiles .tile .cta svg {
  position: absolute;
  right: 0;
  top: 50%;
  width: 12px;
  height: 12px;
  transform: translate(0, -50%);
}
section.half-width_tiles .tiles .tile .overlay {
  position: absolute;
  z-index: 1;
  background-color: #1d191a;
  opacity: 0;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: 0.33s all;
}
section.half-width_tiles .tiles .tile:hover h1, section.half-width_tiles .tiles .tile:hover h2, section.half-width_tiles .tiles .tile:hover h3, section.half-width_tiles .tiles .tile:hover h4, section.half-width_tiles .tiles .tile:hover h5, section.half-width_tiles .tiles .tile:hover h6, section.half-width_tiles .tiles .tile:focus h1, section.half-width_tiles .tiles .tile:focus h2, section.half-width_tiles .tiles .tile:focus h3, section.half-width_tiles .tiles .tile:focus h4, section.half-width_tiles .tiles .tile:focus h5, section.half-width_tiles .tiles .tile:focus h6 {
  bottom: 4rem;
}
section.half-width_tiles .tiles .tile:hover .cta, section.half-width_tiles .tiles .tile:focus .cta {
  opacity: 1;
  bottom: 2rem;
}
section.half-width_tiles .tiles .tile:hover .overlay, section.half-width_tiles .tiles .tile:focus .overlay {
  opacity: 0.08;
}
section.half-width_tiles .tiles .tile:hover img, section.half-width_tiles .tiles .tile:focus img {
  transform: scale(1.2);
}
section.half-width_tiles .tiles .tile:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.half-width_tiles .tiles .tile:active .overlay {
  opacity: 0.16;
}
@media only screen and (max-width: 768px) {
  section.half-width_tiles .tiles .tile h1, section.half-width_tiles .tiles .tile h2, section.half-width_tiles .tiles .tile h3, section.half-width_tiles .tiles .tile h4, section.half-width_tiles .tiles .tile h5, section.half-width_tiles .tiles .tile h6 {
    font-size: 2.25rem;
  }
  section.half-width_tiles .tiles .tile h1 svg, section.half-width_tiles .tiles .tile h2 svg, section.half-width_tiles .tiles .tile h3 svg, section.half-width_tiles .tiles .tile h4 svg, section.half-width_tiles .tiles .tile h5 svg, section.half-width_tiles .tiles .tile h6 svg {
    display: inline-block;
    width: 12px;
    margin-left: 1rem;
    margin-bottom: 0.25rem;
  }
  section.half-width_tiles .tiles .tile:focus h1, section.half-width_tiles .tiles .tile:focus h2, section.half-width_tiles .tiles .tile:focus h3, section.half-width_tiles .tiles .tile:focus h4, section.half-width_tiles .tiles .tile:focus h5, section.half-width_tiles .tiles .tile:focus h6 {
    bottom: 2rem;
  }
  section.half-width_tiles .tiles .tile:focus .cta {
    opacity: 0;
  }
  section.half-width_tiles .tiles .tile img.desktop {
    display: none;
  }
  section.half-width_tiles .tiles .tile img.mobile {
    display: block;
  }
  section.half-width_tiles .tiles .tile:hover h1, section.half-width_tiles .tiles .tile:hover h2, section.half-width_tiles .tiles .tile:hover h3, section.half-width_tiles .tiles .tile:hover h4, section.half-width_tiles .tiles .tile:hover h5, section.half-width_tiles .tiles .tile:hover h6 {
    bottom: 2rem;
  }
  section.half-width_tiles .tiles .tile:hover .cta {
    display: none;
  }
}
@media only screen and (max-width: 639px) {
  section.half-width_tiles .tiles {
    margin-top: 3rem;
  }
  section.half-width_tiles .tiles .tile {
    width: 100%;
  }
  section.half-width_tiles .tiles .tile h1, section.half-width_tiles .tiles .tile h2, section.half-width_tiles .tiles .tile h3, section.half-width_tiles .tiles .tile h4, section.half-width_tiles .tiles .tile h5, section.half-width_tiles .tiles .tile h6 {
    font-size: 2rem;
    letter-spacing: -2px;
  }
  section.half-width_tiles .tiles .tile h1 svg, section.half-width_tiles .tiles .tile h2 svg, section.half-width_tiles .tiles .tile h3 svg, section.half-width_tiles .tiles .tile h4 svg, section.half-width_tiles .tiles .tile h5 svg, section.half-width_tiles .tiles .tile h6 svg {
    display: inline-block;
    width: 8px;
    margin-left: 1rem;
    margin-bottom: 0.25rem;
  }
  section.half-width_tiles .tiles .tile .cta {
    font-size: 1rem;
  }
}

section.related_work {
  padding: 0 1rem;
  text-align: center;
  margin: 0 auto;
  background-color: #f3f3f3;
}
section.related_work > h1, section.related_work > h2, section.related_work > h3, section.related_work > h4, section.related_work > h5, section.related_work > h6 {
  padding-top: 8rem;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 639px) {
  section.related_work > h1, section.related_work > h2, section.related_work > h3, section.related_work > h4, section.related_work > h5, section.related_work > h6 {
    padding-top: 3rem;
    font-size: 2.125rem;
  }
}
section.related_work > .description {
  max-width: 60%;
  margin: 0 auto;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 639px) {
  section.related_work > .description {
    max-width: 100%;
  }
}
section.related_work a.cta {
  font-size: 1.5rem;
}
section.related_work .tiles {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: calc(100% - 4rem);
  margin: 0 auto;
  padding-top: 1rem;
  max-width: 1550px;
}
@media only screen and (max-width: 639px) {
  section.related_work .tiles {
    width: calc(100% - 1rem);
    padding-top: 3rem;
  }
}
section.related_work .tiles .project {
  display: block;
  width: 100%;
  position: relative;
  padding-bottom: 38.7%;
  margin-bottom: 2rem;
  max-width: 1550px;
  transition: 0.33s all;
  overflow: hidden;
}
section.related_work .tiles .project .award {
  position: absolute;
  top: 0%;
  right: 2.5%;
  width: 5.875%;
  height: auto;
  max-width: 60px;
}
@media only screen and (max-width: 639px) {
  section.related_work .tiles .project .award {
    top: 0%;
    left: 50%;
    transform: translate(-50%, 0);
    width: 32px;
  }
}
@media only screen and (max-width: 639px) {
  section.related_work .tiles .project.has-award {
    padding-top: 2rem;
  }
}
section.related_work .tiles .project .copy {
  width: 50%;
  position: absolute;
  height: 100%;
  left: 0;
  top: 0;
}
section.related_work .tiles .project .copy h1, section.related_work .tiles .project .copy h2, section.related_work .tiles .project .copy h3, section.related_work .tiles .project .copy h4, section.related_work .tiles .project .copy h5, section.related_work .tiles .project .copy h6 {
  font-size: 3.75vw;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 10%;
  width: 80%;
  color: #ffffff;
  text-align: left;
  transition: 0.33s all;
}
@media only screen and (min-width: 1441px) {
  section.related_work .tiles .project .copy h1, section.related_work .tiles .project .copy h2, section.related_work .tiles .project .copy h3, section.related_work .tiles .project .copy h4, section.related_work .tiles .project .copy h5, section.related_work .tiles .project .copy h6 {
    font-size: 3.75rem;
  }
}
section.related_work .tiles .project .copy .cta {
  font-size: 1.67vw;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 10%;
  opacity: 0;
  color: #ffffff;
  transition: 0.33s all;
  border-bottom: 1px dashed;
  padding-right: 24px;
}
section.related_work .tiles .project .copy .cta .arrow {
  position: absolute;
  right: 0;
  height: 100%;
  width: 12px;
  top: 0;
  overflow: hidden;
}
section.related_work .tiles .project .copy .cta .arrow svg {
  width: 12px;
  height: 12px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  transition: 0.33s all;
}
section.related_work .tiles .project .copy .cta .arrow svg:nth-child(2) {
  transform: translate(0, 250%);
}
section.related_work .tiles .project .copy .cta:hover .arrow svg:nth-child(1) {
  transform: translate(0, -300%);
}
section.related_work .tiles .project .copy .cta:hover .arrow svg:nth-child(2) {
  transform: translate(0, -50%);
}
@media only screen and (min-width: 1441px) {
  section.related_work .tiles .project .copy .cta {
    font-size: 1.5rem;
  }
}
section.related_work .tiles .project .image {
  width: 50%;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
section.related_work .tiles .project .image img {
  width: auto;
  max-width: 100%;
  max-height: 600px;
}
section.related_work .tiles .project:hover .copy h1, section.related_work .tiles .project:hover .copy h2, section.related_work .tiles .project:hover .copy h3, section.related_work .tiles .project:hover .copy h4, section.related_work .tiles .project:hover .copy h5, section.related_work .tiles .project:hover .copy h6, section.related_work .tiles .project:focus .copy h1, section.related_work .tiles .project:focus .copy h2, section.related_work .tiles .project:focus .copy h3, section.related_work .tiles .project:focus .copy h4, section.related_work .tiles .project:focus .copy h5, section.related_work .tiles .project:focus .copy h6 {
  transform: translate(0, -75%);
}
section.related_work .tiles .project:hover .copy .cta, section.related_work .tiles .project:focus .copy .cta {
  opacity: 1;
  top: 50%;
  transform: translate(0, 115%);
}
section.related_work .tiles .project:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.related_work .tiles .project:active {
  box-shadow: none;
  transform: scale(0.95);
}
@media only screen and (max-width: 767px) {
  section.related_work .tiles .project {
    min-height: 420px;
  }
}
@media only screen and (max-width: 639px) {
  section.related_work .tiles .project {
    flex-direction: column;
    padding-bottom: 0;
    margin-bottom: 1.5rem;
  }
  section.related_work .tiles .project .copy {
    width: 100%;
    position: relative;
    height: auto;
  }
  section.related_work .tiles .project .copy h1, section.related_work .tiles .project .copy h2, section.related_work .tiles .project .copy h3, section.related_work .tiles .project .copy h4, section.related_work .tiles .project .copy h5, section.related_work .tiles .project .copy h6 {
    position: relative;
    top: auto;
    transform: none;
    left: auto;
    top: auto;
    padding: 2rem 2rem 0;
    text-align: center;
    font-size: 2.25rem;
    width: 100%;
    margin: 0 auto;
    line-height: 1.25;
  }
  section.related_work .tiles .project .copy .cta {
    display: none;
  }
  section.related_work .tiles .project .image {
    width: 100%;
    height: auto;
    position: relative;
    justify-content: center;
  }
  section.related_work .tiles .project:hover .copy h1, section.related_work .tiles .project:hover .copy h2, section.related_work .tiles .project:hover .copy h3, section.related_work .tiles .project:hover .copy h4, section.related_work .tiles .project:hover .copy h5, section.related_work .tiles .project:hover .copy h6, section.related_work .tiles .project:active .copy h1, section.related_work .tiles .project:active .copy h2, section.related_work .tiles .project:active .copy h3, section.related_work .tiles .project:active .copy h4, section.related_work .tiles .project:active .copy h5, section.related_work .tiles .project:active .copy h6, section.related_work .tiles .project:focus .copy h1, section.related_work .tiles .project:focus .copy h2, section.related_work .tiles .project:focus .copy h3, section.related_work .tiles .project:focus .copy h4, section.related_work .tiles .project:focus .copy h5, section.related_work .tiles .project:focus .copy h6 {
    transform: none;
  }
}

section.carousel .slides {
  padding-bottom: 3rem;
  margin-bottom: 2rem;
}
section.carousel .slides .video {
  position: relative;
}
section.carousel .slides .video .play-button {
  position: absolute;
  max-width: 108px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 5;
  border-bottom: 0;
  background-color: #dd4d4d;
  opacity: 0.8;
  padding: 1.75rem 2rem 1.5rem;
  transition: 0.33s all;
  cursor: pointer;
  user-select: auto;
  -webkit-user-drag: auto;
}
section.carousel .slides .video .play-button svg {
  max-width: 36px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  transition: 0.66s all;
  transform-origin: 40% 50%;
  pointer-events: none;
  cursor: pointer;
}
section.carousel .slides .video .play-button span {
  font-size: 1.25rem;
  margin-top: 1rem;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: bold;
  text-align: center;
  color: #ffffff;
  pointer-events: none;
  cursor: pointer;
}
section.carousel .slides .video .play-button:hover {
  opacity: 1;
}
section.carousel .slides .video .play-button:hover svg {
  transform: rotate(360deg);
}
section.carousel .slides .video .play-button:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.carousel .slides .video .play-button:active {
  background-color: #c1262e;
}
@media only screen and (max-width: 419px) {
  section.carousel .slides .video .play-button {
    padding: 1.5rem 2rem 0.75rem;
    max-width: 90px;
  }
}
section.carousel .slides .video .screenshot {
  position: relative;
  z-index: 1;
}
section.carousel .slides .glide__arrows .glide__arrow {
  opacity: 0.66;
  width: 100%;
  max-width: 114px;
  padding: 0;
  border: 0;
  transition: 0.33s all;
  border-radius: 0;
  cursor: pointer;
}
section.carousel .slides .glide__arrows .glide__arrow:hover {
  opacity: 1;
}
section.carousel .slides .glide__arrows .glide__arrow .background path {
  transition: 0.33s all;
  fill: #8cd0e8;
}
section.carousel .slides .glide__arrows .glide__arrow.js-disabled {
  cursor: default;
}
section.carousel .slides .glide__arrows .glide__arrow.js-disabled:hover {
  opacity: 0.66;
}
section.carousel .slides .glide__arrows .glide__arrow.js-disabled .background path {
  fill: #7E7474;
}
section.carousel .slides .glide__arrows .glide__arrow.js-disabled:focus {
  box-shadow: 0;
  outline: none;
}
section.carousel .slides .glide__arrows .glide__arrow.js-disabled:active .background path {
  fill: #7E7474;
}
section.carousel .slides .glide__arrows .glide__arrow:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.carousel .slides .glide__arrows .glide__arrow:active {
  box-shadow: none;
}
section.carousel .slides .glide__arrows .glide__arrow:active .background path {
  fill: #52bbd9;
}
section.carousel .slides .glide__arrows .glide__arrow--left {
  transform: translateY(-50%) scale(-1);
}
@media only screen and (max-width: 639px) {
  section.carousel .slides .glide__arrows {
    display: none;
  }
}
section.carousel .slides .glide__bullets {
  bottom: 0;
  display: flex;
  align-items: center;
}
section.carousel .slides .glide__bullets .glide__bullet {
  background-color: transparent;
  border: 3px solid #e0a2c5;
  margin: 0 0.25rem;
  padding: 0.125rem;
  width: 12px;
  height: 12px;
  transition: 0.33s all;
  cursor: pointer;
}
section.carousel .slides .glide__bullets .glide__bullet:hover {
  background-color: #e0a2c5;
}
section.carousel .slides .glide__bullets .glide__bullet.glide__bullet--active {
  background-color: #e0a2c5;
  transform: scale(1.25);
}
section.carousel .slides .glide__bullets .glide__bullet:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.carousel .slides .glide__bullets .glide__bullet:active {
  box-shadow: none;
  background-color: #aa4f78;
  border: 3px solid #aa4f78;
}
@media only screen and (max-width: 639px) {
  section.carousel {
    margin-top: 100px;
  }
}

div.carousel-modal .modal__container {
  padding: 2rem;
  width: 90%;
  max-width: none;
}
div.carousel-modal .modal__container.js-square {
  max-width: 600px;
}
div.carousel-modal .modal__container.js-square .modal__content {
  padding-bottom: 100%;
}
div.carousel-modal .modal__container .modal__close {
  top: 0;
  right: 0;
  padding: 1.5rem 1.75rem;
  font-size: 2rem;
  background: white;
  cursor: pointer;
}
div.carousel-modal .modal__container .modal__close:before {
  cursor: pointer;
}
div.carousel-modal .modal__container .modal__content {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
}
div.carousel-modal .modal__container .modal__content iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 639px) {
  div.carousel-modal .modal__container {
    padding: 1rem;
    width: 100%;
  }
  div.carousel-modal .modal__container .modal__close {
    padding: 1rem 1.25rem;
    font-size: 1.5rem;
  }
}

section.logos {
  padding: 12rem 1rem 13rem;
  text-align: center;
  margin: 0 auto;
  background-color: #f3f3f3;
}
@media only screen and (max-width: 639px) {
  section.logos {
    padding: 3rem 1rem;
  }
}
section.logos > h2 {
  margin-bottom: 1rem;
}
@media only screen and (max-width: 639px) {
  section.logos > h2 {
    font-size: 2.25rem;
  }
}
section.logos h1, section.logos h2, section.logos h3, section.logos h4, section.logos h5, section.logos h6 {
  margin-bottom: 1rem;
}
section.logos > .description {
  max-width: 80%;
  margin: 0 auto;
}
section.logos .logos {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  margin-top: 3rem;
  position: relative;
}
section.logos .logos .wrapper {
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
section.logos .logos .wrapper .slot {
  width: calc(20% - 0.5rem);
  position: relative;
  display: inline-block;
}
section.logos .logos .wrapper .slot .logo {
  width: 100%;
  position: relative;
  display: none;
  opacity: 0;
  transition: 0.33s all;
}
section.logos .logos .wrapper .slot .logo img {
  width: 100%;
}
section.logos .logos .wrapper .slot .logo .mono {
  position: relative;
  z-index: 1;
  transition: 0.33s all;
}
section.logos .logos .wrapper .slot .logo .colour {
  position: absolute;
  z-index: 2;
  opacity: 0;
  top: 0;
  left: 0;
  transition: 0.33s all;
}
section.logos .logos .wrapper .slot .logo:hover {
  transform: scale(1.1);
}
section.logos .logos .wrapper .slot .logo:hover .colour {
  opacity: 1;
}
@media only screen and (max-width: 639px) {
  section.logos .logos .wrapper .slot {
    width: calc(50% - 1rem);
  }
}
section.logos .logos .fpo-logo {
  width: calc(25% - 0.66rem);
  position: relative;
  opacity: 0;
  pointer-events: none;
}
@media only screen and (max-width: 639px) {
  section.logos .logos {
    height: 300px;
  }
}

section.logos_static {
  padding: 12rem 1rem 13rem;
  text-align: center;
  margin: 0 auto;
  background-color: #f3f3f3;
}
@media only screen and (max-width: 639px) {
  section.logos_static {
    padding: 3rem 1rem;
  }
}
section.logos_static > h2 {
  margin-bottom: 1rem;
}
@media only screen and (max-width: 639px) {
  section.logos_static > h2 {
    font-size: 2.25rem;
  }
}
section.logos_static h1, section.logos_static h2, section.logos_static h3, section.logos_static h4, section.logos_static h5, section.logos_static h6 {
  margin-bottom: 1rem;
}
section.logos_static > .description {
  max-width: 80%;
  margin: 0 auto;
}
section.logos_static .logos_static {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  margin-top: 3rem;
  position: relative;
}
section.logos_static .logos_static .wrapper {
  width: 100%;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
section.logos_static .logos_static .wrapper .logo {
  width: calc(20% - 0.5rem);
  position: relative;
  display: inline-block;
  transition: 0.33s all;
}
section.logos_static .logos_static .wrapper .logo img {
  width: 100%;
}
section.logos_static .logos_static .wrapper .logo .mono {
  position: relative;
  z-index: 1;
  transition: 0.33s all;
}
section.logos_static .logos_static .wrapper .logo .colour {
  position: absolute;
  z-index: 2;
  opacity: 0;
  top: 0;
  left: 0;
  transition: 0.33s all;
}
section.logos_static .logos_static .wrapper .logo:hover {
  transform: scale(1.1);
}
section.logos_static .logos_static .wrapper .logo:hover .colour {
  opacity: 1;
}
@media only screen and (max-width: 639px) {
  section.logos_static .logos_static .wrapper .logo {
    width: calc(50% - 1rem);
  }
}

section.work-details {
  padding: 4rem 2rem;
}
section.work-details .content {
  display: flex;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  flex-direction: row;
  position: relative;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
}
section.work-details .content h1, section.work-details .content h2, section.work-details .content h3, section.work-details .content h4, section.work-details .content h5, section.work-details .content h6 {
  width: 70%;
  margin-bottom: 2rem;
}
section.work-details .content .copy {
  display: flex;
  width: 100%;
  flex-direction: row;
  text-align: left;
  align-items: center;
  justify-content: space-between;
  z-index: 2;
}
section.work-details .content .copy .description {
  width: 70%;
  padding-right: 10%;
}
section.work-details .content .copy .bullets {
  width: 30%;
  font-size: 1.5rem;
}
section.work-details .content .copy .bullets ul li {
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  margin-bottom: 0.75rem;
  letter-spacing: -1px;
  font-size: 1.25rem;
  display: flex;
  align-items: center;
}
section.work-details .content .copy .bullets ul li:last-child {
  margin-bottom: 0;
}
section.work-details .content .copy .bullets ul li span {
  margin-right: 1.5rem;
}
section.work-details .content .results {
  margin-top: 4rem;
  width: 100%;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
}
section.work-details .content .results h1, section.work-details .content .results h2, section.work-details .content .results h3, section.work-details .content .results h4, section.work-details .content .results h5, section.work-details .content .results h6 {
  font-size: 1.25rem;
  line-height: 1.167;
  letter-spacing: -1px;
  width: 100%;
}
section.work-details .content .results .stats {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}
section.work-details .content .results .stats .stat {
  width: 25%;
  font-size: 1rem;
  padding: 1rem 2rem 1rem 0;
  opacity: 0;
}
section.work-details .content .results .stats .stat .end_number, section.work-details .content .results .stats .stat .prefix, section.work-details .content .results .stats .stat .suffix {
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: 700;
  font-size: 4.76vw;
  letter-spacing: -4px;
}
@media only screen and (min-width: 1680px) {
  section.work-details .content .results .stats .stat .end_number, section.work-details .content .results .stats .stat .prefix, section.work-details .content .results .stats .stat .suffix {
    font-size: 5rem;
  }
}
section.work-details .content .results .stats .stat .blurb {
  font-size: 1.25rem;
}
@media only screen and (max-width: 767px) {
  section.work-details .content .results .stats .stat {
    width: 50%;
    padding: 1rem 1rem 1rem 0;
  }
  section.work-details .content .results .stats .stat .end_number, section.work-details .content .results .stats .stat .prefix, section.work-details .content .results .stats .stat .suffix {
    font-size: 3rem;
  }
}
section.work-details .content .results .stats.four_digits .stat .end_number, section.work-details .content .results .stats.four_digits .stat .prefix, section.work-details .content .results .stats.four_digits .stat .suffix {
  font-size: 3.5vw;
  letter-spacing: -2px;
}
@media only screen and (min-width: 1680px) {
  section.work-details .content .results .stats.four_digits .stat .end_number, section.work-details .content .results .stats.four_digits .stat .prefix, section.work-details .content .results .stats.four_digits .stat .suffix {
    font-size: 4.25rem;
  }
}
@media only screen and (max-width: 767px) {
  section.work-details .content .results .stats.four_digits .stat .end_number, section.work-details .content .results .stats.four_digits .stat .prefix, section.work-details .content .results .stats.four_digits .stat .suffix {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 419px) {
  section.work-details .content .results {
    display: block;
  }
  section.work-details .content .results .stats {
    display: block;
  }
  section.work-details .content .results .stats .stat {
    width: 100%;
    padding: 1rem;
  }
}
@media only screen and (max-width: 639px) {
  section.work-details {
    padding: 2rem;
  }
  section.work-details .content {
    flex-direction: column;
  }
  section.work-details .content h1, section.work-details .content h2, section.work-details .content h3, section.work-details .content h4, section.work-details .content h5, section.work-details .content h6 {
    width: 100%;
    font-size: 2.25rem;
  }
  section.work-details .content .copy {
    flex-direction: column;
  }
  section.work-details .content .copy p {
    width: 100%;
    padding-right: 0;
  }
  section.work-details .content .copy .bullets {
    padding: 2rem 0;
    width: 100%;
  }
  section.work-details .content .results {
    margin-top: 2rem;
  }
}

section.job_postings {
  padding: 4rem 2rem 6rem;
  text-align: center;
}
section.job_postings > h1, section.job_postings > h2, section.job_postings > h3, section.job_postings > h4, section.job_postings > h5, section.job_postings > h6 {
  margin-bottom: 2rem;
}
section.job_postings > p {
  max-width: 960px;
  margin: 0 auto;
}
@media only screen and (max-width: 639px) {
  section.job_postings {
    padding: 4rem 1.5rem;
  }
  section.job_postings > h1, section.job_postings > h2, section.job_postings > h3, section.job_postings > h4, section.job_postings > h5, section.job_postings > h6 {
    font-size: 2.25rem;
    margin-bottom: 4rem;
  }
}
section.job_postings .email {
  margin-top: 0.5rem;
  display: block;
}
section.job_postings .email a.cta {
  font-size: 1.25rem;
  padding-right: 24px;
  position: relative;
  display: inline-block;
}
section.job_postings .email a.cta .arrow {
  position: absolute;
  right: 0;
  height: 100%;
  width: 16px;
  top: 0;
  overflow: hidden;
}
section.job_postings .email a.cta .arrow svg {
  width: 12px;
  height: 12px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  transition: 0.33s all;
}
section.job_postings .email a.cta .arrow svg:nth-child(2) {
  transform: translate(0, 250%);
}
section.job_postings .email a.cta:hover .arrow svg:nth-child(1) {
  transform: translate(0, -300%);
}
section.job_postings .email a.cta:hover .arrow svg:nth-child(2) {
  transform: translate(0, -50%);
}
section.job_postings .email a.cta:active {
  box-shadow: none;
}
section.job_postings > h1, section.job_postings > h2, section.job_postings > h3, section.job_postings > h4, section.job_postings > h5, section.job_postings > h6 {
  margin-top: 5rem;
  margin-bottom: 2rem;
}
@media only screen and (max-width: 639px) {
  section.job_postings > h1, section.job_postings > h2, section.job_postings > h3, section.job_postings > h4, section.job_postings > h5, section.job_postings > h6 {
    font-size: 1.5rem;
  }
}
section.job_postings .postings {
  padding-top: 2rem;
  display: flex;
  flex-direction: column;
}
section.job_postings .postings .post {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  text-align: left;
  padding: 1rem;
  border-bottom: 1px solid #D0D3CC;
  color: #7E7474;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: 0.33s all;
}
section.job_postings .postings .post button {
  background: #e0a2c5;
  border: 0;
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  transition: 0.33s all;
}
section.job_postings .postings .post button .image {
  width: 60px;
  height: 60px;
  position: relative;
  overflow: hidden;
  display: block;
}
section.job_postings .postings .post button .image img {
  max-width: 10px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: 0.33s all;
}
section.job_postings .postings .post button .image img:last-child {
  top: 150%;
}
@media only screen and (max-width: 639px) {
  section.job_postings .postings .post button {
    width: 40px;
    height: 40px;
  }
  section.job_postings .postings .post button .image {
    width: 40px;
    height: 40px;
  }
  section.job_postings .postings .post button .image img {
    max-width: 8px;
  }
}
section.job_postings .postings .post button:hover .image img {
  top: -100%;
}
section.job_postings .postings .post button:hover .image img:last-child {
  top: 50%;
}
section.job_postings .postings .post p {
  font-weight: 300;
  letter-spacing: 0;
  color: #1d191a;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
}
@media only screen and (max-width: 639px) {
  section.job_postings .postings .post p {
    font-size: 1rem;
  }
}
section.job_postings .postings .post:first-child {
  border-top: 1px solid #D0D3CC;
}
section.job_postings .postings .post:hover {
  background-color: #cac6c6;
}
section.job_postings .postings .post:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.job_postings .postings .post:active button {
  transform: scale(0.8);
}
section.job_postings .no-jobs {
  padding: 2rem;
  max-width: 960px;
  margin: 0 auto;
}
section.job_postings .no-jobs p {
  color: #7E7474;
}

section.job_post_details .wrapper {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  max-width: 1200px;
  margin: 0 auto;
  padding: 4rem 0;
  position: relative;
}
section.job_post_details .wrapper .side-info {
  width: 300px;
  position: absolute;
  padding: 0 1rem;
  padding-top: 0.5rem;
  transition: 0.33s top;
  z-index: 2;
}
section.job_post_details .wrapper .side-info p {
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
}
section.job_post_details .wrapper .side-info p strong {
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: 600;
}
section.job_post_details .wrapper .side-info div {
  margin-bottom: 2rem;
}
section.job_post_details .wrapper .side-info div:last-child {
  margin-bottom: 0;
}
section.job_post_details .wrapper .side-info .apply {
  font-size: 1rem;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: bold;
}
section.job_post_details .wrapper .side-info .apply a {
  display: inline-block;
  padding: 1rem;
  padding-right: 3rem;
  height: 100%;
  margin-top: 1rem;
  color: #ffffff;
  background-color: #7E7474;
  border-bottom: 0;
  position: relative;
  overflow: hidden;
  transition: 0.33s all;
}
section.job_post_details .wrapper .side-info .apply a:before {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  background-image: url("../images/icon-email-white.svg");
  background-size: 20px 20px;
  background-repeat: no-repeat;
  right: 1rem;
  top: 50%;
  transform: translate(0, -50%);
  transition: 0.33s all;
}
section.job_post_details .wrapper .side-info .apply a:after {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  background-image: url("../images/icon-email-white.svg");
  background-size: 20px 20px;
  background-repeat: no-repeat;
  right: 1rem;
  top: 50%;
  transform: translate(0, 250%);
  transition: 0.33s all;
}
section.job_post_details .wrapper .side-info .apply a:hover:before {
  transform: translate(0, -350%);
}
section.job_post_details .wrapper .side-info .apply a:hover:after {
  transform: translate(0, -50%);
}
section.job_post_details .wrapper .side-info .apply a:active {
  transform: scale(0.8);
}
section.job_post_details .wrapper .side-info.js-sticky {
  width: 100%;
  position: fixed;
  padding-top: 0.5rem;
  top: 2rem;
  left: 50%;
  max-width: 1200px;
  transform: translate(-50%, 0);
}
section.job_post_details .wrapper .side-info.js-sticky.js-dip {
  top: 9rem;
}
section.job_post_details .wrapper .side-info.js-bottom {
  width: 300px;
  position: absolute;
  top: auto;
  bottom: 4rem;
  transform: none;
  left: auto;
}
section.job_post_details .wrapper .description {
  width: calc(100% - 300px);
  margin-left: 300px;
  z-index: 3;
  padding-right: 1rem;
}
section.job_post_details .wrapper .description h2 {
  margin-bottom: 2rem;
}
section.job_post_details .wrapper .description .wysiwyg strong {
  font-weight: bold;
  display: inline-block;
}
section.job_post_details .wrapper .description .wysiwyg h1, section.job_post_details .wrapper .description .wysiwyg h2, section.job_post_details .wrapper .description .wysiwyg h3, section.job_post_details .wrapper .description .wysiwyg h4, section.job_post_details .wrapper .description .wysiwyg h5 {
  margin-bottom: 1rem;
  margin-top: 3rem;
}
section.job_post_details .wrapper .description .wysiwyg h1:first-child, section.job_post_details .wrapper .description .wysiwyg h2:first-child, section.job_post_details .wrapper .description .wysiwyg h3:first-child, section.job_post_details .wrapper .description .wysiwyg h4:first-child, section.job_post_details .wrapper .description .wysiwyg h5:first-child {
  margin-top: 0;
}
section.job_post_details .wrapper .description .wysiwyg p {
  margin-bottom: 1rem;
}
section.job_post_details .wrapper .description .wysiwyg ul {
  font-size: 1.25rem;
  padding-left: 2rem;
  list-style-type: disc;
}
section.job_post_details .wrapper .description .wysiwyg ul li {
  margin-bottom: 0.5rem;
}
section.job_post_details .wrapper .description .wysiwyg ul li p {
  margin-bottom: 0rem;
}
@media only screen and (max-width: 767px) {
  section.job_post_details .wrapper {
    flex-direction: column;
    padding: 2rem;
  }
  section.job_post_details .wrapper .side-info {
    position: relative;
    width: 100%;
    padding-bottom: 3rem;
  }
  section.job_post_details .wrapper .side-info .apply a {
    width: 100%;
  }
  section.job_post_details .wrapper .side-info.js-sticky {
    width: 100%;
    position: relative;
    padding-bottom: 3rem;
    top: auto;
    left: auto;
    max-width: 1200px;
    transform: none;
  }
  section.job_post_details .wrapper .side-info.js-sticky.js-dip {
    top: auto;
  }
  section.job_post_details .wrapper .side-info.js-bottom {
    width: 100%;
    position: relative;
    top: auto;
    bottom: auto;
    transform: none;
    left: auto;
  }
  section.job_post_details .wrapper .description {
    width: 100%;
    margin-left: 0;
  }
}

section.left-right_content {
  padding: 4rem 1rem;
  text-align: center;
  margin: 0 auto;
}
section.left-right_content > h1, section.left-right_content h2, section.left-right_content h3, section.left-right_content h4, section.left-right_content h5, section.left-right_content h6 {
  margin-bottom: 2rem;
}
section.left-right_content > .description {
  width: 100%;
  margin: 0 auto;
  max-width: 960px;
  margin-bottom: 6rem;
}
section.left-right_content a.cta {
  font-size: 1.5rem;
}
section.left-right_content .blocks {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
}
section.left-right_content .blocks .block {
  position: relative;
  display: flex;
  flex-direction: row;
  text-align: left;
  margin-bottom: 2rem;
  min-height: 400px;
}
section.left-right_content .blocks .block .left {
  width: 50%;
}
section.left-right_content .blocks .block .right {
  width: 50%;
}
section.left-right_content .blocks .block div {
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 2rem 0;
}
section.left-right_content .blocks .block div h1, section.left-right_content .blocks .block div h2, section.left-right_content .blocks .block div h3, section.left-right_content .blocks .block div h4, section.left-right_content .blocks .block div h5, section.left-right_content .blocks .block div h6 {
  text-align: left;
  position: relative;
  z-index: 2;
  padding-left: 13.333%;
}
@media only screen and (max-width: 1023px) {
  section.left-right_content .blocks .block div h1, section.left-right_content .blocks .block div h2, section.left-right_content .blocks .block div h3, section.left-right_content .blocks .block div h4, section.left-right_content .blocks .block div h5, section.left-right_content .blocks .block div h6 {
    font-size: 2.5rem;
    width: 80%;
  }
}
section.left-right_content .blocks .block div img {
  z-index: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-100%, -50%);
  width: 33.33%;
  max-width: 200px;
  height: auto;
}
section.left-right_content .blocks .block div p {
  padding: 4rem 1rem;
  max-width: 480px;
}
section.left-right_content .blocks .block .background {
  position: absolute;
  background-color: #ffffff;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  z-index: 1;
  transform: translate(-50%, -50%);
}
@media only screen and (max-width: 639px) {
  section.left-right_content {
    padding: 1.5rem;
  }
  section.left-right_content > h2 {
    font-size: 2.25rem;
  }
  section.left-right_content > .description {
    margin-bottom: 3rem;
  }
  section.left-right_content .blocks .block {
    flex-direction: column;
    padding: 2rem;
  }
  section.left-right_content .blocks .block .left {
    width: 100%;
  }
  section.left-right_content .blocks .block .right {
    width: 100%;
    padding: 0;
  }
  section.left-right_content .blocks .block div h1, section.left-right_content .blocks .block div h2, section.left-right_content .blocks .block div h3, section.left-right_content .blocks .block div h4, section.left-right_content .blocks .block div h5, section.left-right_content .blocks .block div h6 {
    padding-left: 0;
    text-align: center;
    font-size: 2.25rem;
    width: 100%;
  }
  section.left-right_content .blocks .block div img {
    transform: translate(-50%, -50%);
    width: 150px;
  }
  section.left-right_content .blocks .block div p {
    padding: 2rem 0;
    text-align: center;
  }
}

section.image-copy-overlap {
  padding: 3rem 1rem;
  overflow: hidden;
  --color-text: #fff;
  --color-bg: #000;
  --color-link: #f9d77e;
  --color-link-hover: #fff;
  --color-info: #efc453;
  --glitch-width: 500px;
  --glitch-height: 550px;
  --gap-horizontal: 10px;
  --gap-vertical: 0px;
  --time-anim: 4s;
  --delay-anim: 2s;
  --blend-mode-1: none;
  --blend-mode-2: none;
  --blend-mode-3: none;
  --blend-mode-4: none;
  --blend-mode-5: overlay;
  --blend-color-1: transparent;
  --blend-color-2: transparent;
  --blend-color-3: transparent;
  --blend-color-4: transparent;
  --blend-color-5: #af4949;
}
section.image-copy-overlap .content {
  display: flex;
  width: calc(100% - 4rem);
  max-width: 1200px;
  margin: 0 auto;
  flex-direction: row;
  position: relative;
  align-items: center;
  justify-content: flex-start;
  min-height: 600px;
  height: auto;
}
section.image-copy-overlap .content .copy {
  display: flex;
  width: 60%;
  max-width: 600px;
  padding: 5rem 0;
  height: 100%;
  flex-direction: column;
  text-align: left;
  align-items: flex-start;
  justify-content: center;
  z-index: 2;
  padding-left: 8%;
}
section.image-copy-overlap .content .copy .description {
  width: 100%;
}
section.image-copy-overlap .content .copy h1, section.image-copy-overlap .content .copy h2, section.image-copy-overlap .content .copy h3, section.image-copy-overlap .content .copy h4, section.image-copy-overlap .content .copy h5, section.image-copy-overlap .content .copy h6 {
  width: auto;
  margin-bottom: 1rem;
  opacity: 0;
}
section.image-copy-overlap .content .copy h1 span, section.image-copy-overlap .content .copy h2 span, section.image-copy-overlap .content .copy h3 span, section.image-copy-overlap .content .copy h4 span, section.image-copy-overlap .content .copy h5 span, section.image-copy-overlap .content .copy h6 span {
  display: inline-block;
  opacity: 0;
}
section.image-copy-overlap .content .image {
  width: 40%;
  height: auto;
  align-self: flex-end;
  z-index: 3;
}
section.image-copy-overlap .content .image img {
  position: relative;
  width: 100%;
  height: auto;
  opacity: 0;
  bottom: 100px;
}
section.image-copy-overlap .content .background {
  width: 100%;
  height: 100%;
  position: absolute !important;
  z-index: 1;
}
section.image-copy-overlap .glitch {
  position: absolute;
  top: -2rem;
  right: 0;
  width: 100%;
  height: auto;
  overflow: hidden;
}
section.image-copy-overlap .glitch__img {
  position: absolute;
  top: calc(-1 * var(--gap-vertical));
  left: calc(-1 * var(--gap-horizontal));
  width: 100%;
  height: 100%;
  background: url(../images/phone.png) no-repeat 50% 0;
  background-color: var(--blend-color-1);
  background-size: cover;
  transform: translate3d(0, 0, 0);
  background-blend-mode: var(--blend-mode-1);
}
section.image-copy-overlap .glitch__img:nth-child(n+2) {
  opacity: 0;
}
section.image-copy-overlap .glitch__img:nth-child(n+2) {
  animation-duration: var(--time-anim);
  animation-delay: var(--delay-anim);
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}
section.image-copy-overlap .glitch__img:nth-child(2) {
  background-color: var(--blend-color-2);
  background-blend-mode: var(--blend-mode-2);
  animation-name: glitch-anim-1;
}
section.image-copy-overlap .glitch__img:nth-child(3) {
  background-color: var(--blend-color-3);
  background-blend-mode: var(--blend-mode-3);
  animation-name: glitch-anim-2;
}
section.image-copy-overlap .glitch__img:nth-child(4) {
  background-color: var(--blend-color-4);
  background-blend-mode: var(--blend-mode-4);
  animation-name: glitch-anim-3;
}
section.image-copy-overlap .glitch__img:nth-child(5) {
  background-color: var(--blend-color-5);
  background-blend-mode: var(--blend-mode-5);
}
@media only screen and (max-width: 768px) {
  section.image-copy-overlap .content .copy {
    width: 40%;
  }
  section.image-copy-overlap .content .image {
    width: 60%;
  }
}
@media only screen and (max-width: 639px) {
  section.image-copy-overlap {
    padding: 1.5rem;
    padding-top: 6rem;
  }
  section.image-copy-overlap .content {
    width: 100%;
    flex-direction: column;
  }
  section.image-copy-overlap .content .copy {
    width: 100%;
    order: 2;
    margin-left: 0;
    padding: 0 2rem 2rem 2rem;
  }
  section.image-copy-overlap .content .copy h2 {
    font-size: 2.25rem;
  }
  section.image-copy-overlap .content .copy h1, section.image-copy-overlap .content .copy h2, section.image-copy-overlap .content .copy h3, section.image-copy-overlap .content .copy h4, section.image-copy-overlap .content .copy h5, section.image-copy-overlap .content .copy h6 {
    margin-bottom: 3rem;
  }
  section.image-copy-overlap .content .image {
    width: 100%;
    order: 1;
  }
  section.image-copy-overlap .content .image.glitch {
    top: -2rem;
    right: 0;
    height: 280px;
    position: relative;
    bottom: 60px;
    width: 50%;
    align-self: center;
  }
}

/* Animations */
@keyframes glitch-anim-1 {
  0% {
    opacity: 1;
    transform: translate3d(var(--gap-horizontal), 0, 0);
    -webkit-clip-path: polygon(0 2%, 100% 2%, 100% 5%, 0 5%);
    clip-path: polygon(0 2%, 100% 2%, 100% 5%, 0 5%);
  }
  2% {
    -webkit-clip-path: polygon(0 15%, 100% 15%, 100% 15%, 0 15%);
    clip-path: polygon(0 15%, 100% 15%, 100% 15%, 0 15%);
  }
  4% {
    -webkit-clip-path: polygon(0 10%, 100% 10%, 100% 20%, 0 20%);
    clip-path: polygon(0 10%, 100% 10%, 100% 20%, 0 20%);
  }
  6% {
    -webkit-clip-path: polygon(0 1%, 100% 1%, 100% 2%, 0 2%);
    clip-path: polygon(0 1%, 100% 1%, 100% 2%, 0 2%);
  }
  8% {
    -webkit-clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
    clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
  }
  10% {
    -webkit-clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
    clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
  }
  12% {
    -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
    clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
  }
  14% {
    -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
    clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
  }
  16% {
    -webkit-clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
    clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
  }
  18% {
    -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
    clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
  }
  20% {
    -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
    clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
  }
  21.9% {
    opacity: 1;
    transform: translate3d(var(--gap-horizontal), 0, 0);
  }
  22%, 100% {
    opacity: 0;
    transform: translate3d(0, 0, 0);
    -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
    clip-path: polygon(0 0, 0 0, 0 0, 0 0);
  }
}
@keyframes glitch-anim-2 {
  0% {
    opacity: 1;
    transform: translate3d(calc(-1 * var(--gap-horizontal)), 0, 0);
    -webkit-clip-path: polygon(0 25%, 100% 25%, 100% 30%, 0 30%);
    clip-path: polygon(0 25%, 100% 25%, 100% 30%, 0 30%);
  }
  3% {
    -webkit-clip-path: polygon(0 3%, 100% 3%, 100% 3%, 0 3%);
    clip-path: polygon(0 3%, 100% 3%, 100% 3%, 0 3%);
  }
  5% {
    -webkit-clip-path: polygon(0 5%, 100% 5%, 100% 20%, 0 20%);
    clip-path: polygon(0 5%, 100% 5%, 100% 20%, 0 20%);
  }
  7% {
    -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
    clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
  }
  9% {
    -webkit-clip-path: polygon(0 40%, 100% 40%, 100% 40%, 0 40%);
    clip-path: polygon(0 40%, 100% 40%, 100% 40%, 0 40%);
  }
  11% {
    -webkit-clip-path: polygon(0 52%, 100% 52%, 100% 59%, 0 59%);
    clip-path: polygon(0 52%, 100% 52%, 100% 59%, 0 59%);
  }
  13% {
    -webkit-clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
    clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
  }
  15% {
    -webkit-clip-path: polygon(0 75%, 100% 75%, 100% 75%, 0 75%);
    clip-path: polygon(0 75%, 100% 75%, 100% 75%, 0 75%);
  }
  17% {
    -webkit-clip-path: polygon(0 65%, 100% 65%, 100% 40%, 0 40%);
    clip-path: polygon(0 65%, 100% 65%, 100% 40%, 0 40%);
  }
  19% {
    -webkit-clip-path: polygon(0 45%, 100% 45%, 100% 50%, 0 50%);
    clip-path: polygon(0 45%, 100% 45%, 100% 50%, 0 50%);
  }
  20% {
    -webkit-clip-path: polygon(0 14%, 100% 14%, 100% 33%, 0 33%);
    clip-path: polygon(0 14%, 100% 14%, 100% 33%, 0 33%);
  }
  21.9% {
    opacity: 1;
    transform: translate3d(calc(-1 * var(--gap-horizontal)), 0, 0);
  }
  22%, 100% {
    opacity: 0;
    transform: translate3d(0, 0, 0);
    -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
    clip-path: polygon(0 0, 0 0, 0 0, 0 0);
  }
}
@keyframes glitch-anim-3 {
  0% {
    opacity: 1;
    transform: translate3d(0, calc(-1 * var(--gap-vertical)), 0) scale3d(-1, -1, 1);
    -webkit-clip-path: polygon(0 1%, 100% 1%, 100% 3%, 0 3%);
    clip-path: polygon(0 1%, 100% 1%, 100% 3%, 0 3%);
  }
  1.5% {
    -webkit-clip-path: polygon(0 10%, 100% 10%, 100% 9%, 0 9%);
    clip-path: polygon(0 10%, 100% 10%, 100% 9%, 0 9%);
  }
  2% {
    -webkit-clip-path: polygon(0 5%, 100% 5%, 100% 6%, 0 6%);
    clip-path: polygon(0 5%, 100% 5%, 100% 6%, 0 6%);
  }
  2.5% {
    -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
    clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
  }
  3% {
    -webkit-clip-path: polygon(0 10%, 100% 10%, 100% 10%, 0 10%);
    clip-path: polygon(0 10%, 100% 10%, 100% 10%, 0 10%);
  }
  5% {
    -webkit-clip-path: polygon(0 30%, 100% 30%, 100% 25%, 0 25%);
    clip-path: polygon(0 30%, 100% 30%, 100% 25%, 0 25%);
  }
  5.5% {
    -webkit-clip-path: polygon(0 15%, 100% 15%, 100% 16%, 0 16%);
    clip-path: polygon(0 15%, 100% 15%, 100% 16%, 0 16%);
  }
  7% {
    -webkit-clip-path: polygon(0 40%, 100% 40%, 100% 39%, 0 39%);
    clip-path: polygon(0 40%, 100% 40%, 100% 39%, 0 39%);
  }
  8% {
    -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
    clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
  }
  9% {
    -webkit-clip-path: polygon(0 60%, 100% 60%, 100% 55%, 0 55%);
    clip-path: polygon(0 60%, 100% 60%, 100% 55%, 0 55%);
  }
  10.5% {
    -webkit-clip-path: polygon(0 30%, 100% 30%, 100% 31%, 0 31%);
    clip-path: polygon(0 30%, 100% 30%, 100% 31%, 0 31%);
  }
  11% {
    -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 69%, 0 69%);
    clip-path: polygon(0 70%, 100% 70%, 100% 69%, 0 69%);
  }
  13% {
    -webkit-clip-path: polygon(0 40%, 100% 40%, 100% 41%, 0 41%);
    clip-path: polygon(0 40%, 100% 40%, 100% 41%, 0 41%);
  }
  14% {
    -webkit-clip-path: polygon(0 80%, 100% 80%, 100% 75%, 0 75%);
    clip-path: polygon(0 80%, 100% 80%, 100% 75%, 0 75%);
  }
  14.5% {
    -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 51%, 0 51%);
    clip-path: polygon(0 50%, 100% 50%, 100% 51%, 0 51%);
  }
  15% {
    -webkit-clip-path: polygon(0 90%, 100% 90%, 100% 90%, 0 90%);
    clip-path: polygon(0 90%, 100% 90%, 100% 90%, 0 90%);
  }
  16% {
    -webkit-clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
    clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
  }
  18% {
    -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 99%, 0 99%);
    clip-path: polygon(0 100%, 100% 100%, 100% 99%, 0 99%);
  }
  20% {
    -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 71%, 0 71%);
    clip-path: polygon(0 70%, 100% 70%, 100% 71%, 0 71%);
  }
  21.9% {
    opacity: 1;
    transform: translate3d(0, calc(-1 * var(--gap-vertical)), 0) scale3d(-1, -1, 1);
  }
  22%, 100% {
    opacity: 0;
    transform: translate3d(0, 0, 0);
    -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
    clip-path: polygon(0 0, 0 0, 0 0, 0 0);
  }
}
@keyframes glitch-anim-text {
  0% {
    transform: translate3d(calc(-1 * var(--gap-horizontal)), 0, 0) scale3d(-1, -1, 1);
    -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
    clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
  }
  2% {
    -webkit-clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
    clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
  }
  4% {
    -webkit-clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
    clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
  }
  5% {
    -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
    clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
  }
  6% {
    -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
    clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
  }
  7% {
    -webkit-clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
    clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
  }
  8% {
    -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
    clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
  }
  9% {
    -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
    clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
  }
  9.9% {
    transform: translate3d(calc(-1 * var(--gap-horizontal)), 0, 0) scale3d(-1, -1, 1);
  }
  10%, 100% {
    transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  }
}
/* Flash */
@keyframes glitch-anim-flash {
  0%, 5% {
    opacity: 0.2;
    transform: translate3d(var(--gap-horizontal), var(--gap-vertical), 0);
  }
  5.5%, 100% {
    opacity: 0;
    transform: translate3d(0, 0, 0);
  }
}
nav.services-nav {
  display: block;
  position: absolute;
  z-index: 9998;
  margin-top: -6rem;
  left: 50%;
  transform: translate(-50%, 0);
  background: #ffffff;
  border-radius: 50px;
  transition: 0.33s top;
}
nav.services-nav ul {
  display: flex;
  width: 100%;
}
nav.services-nav ul li {
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  margin: 0.5rem;
  padding: 0.5rem 1rem;
  border-radius: 50px;
  transition: 0.33s all;
  font-weight: 700;
}
nav.services-nav ul li a {
  border-bottom: 0;
  color: #1d191a;
}
nav.services-nav ul li:nth-child(1).js-active {
  background-color: #eacc4a;
}
nav.services-nav ul li:nth-child(1):hover {
  background-color: #eacc4a;
}
nav.services-nav ul li:nth-child(2).js-active {
  background-color: #f35c66;
}
nav.services-nav ul li:nth-child(2):hover {
  background-color: #f35c66;
}
nav.services-nav ul li:nth-child(4).js-active {
  background-color: #8cd0e8;
}
nav.services-nav ul li:nth-child(4):hover {
  background-color: #8cd0e8;
}
nav.services-nav ul li:nth-child(5).js-active {
  background-color: #e0a2c5;
}
nav.services-nav ul li:nth-child(5):hover {
  background-color: #e0a2c5;
}
nav.services-nav ul li:nth-child(3).js-active {
  background-color: #b8c950;
}
nav.services-nav ul li:nth-child(3):hover {
  background-color: #b8c950;
}
nav.services-nav ul li:nth-child(6).js-active {
  background-color: #c2a8e5;
}
nav.services-nav ul li:nth-child(6):hover {
  background-color: #c2a8e5;
}
nav.services-nav.js-transition {
  opacity: 0;
}
nav.services-nav.js-sticky {
  position: fixed;
  margin-top: 0;
  top: 3rem;
  opacity: 1;
}
nav.services-nav.js-sticky.js-hide {
  top: -4rem;
}
@media only screen and (max-width: 639px) {
  nav.services-nav {
    margin-top: 0rem;
  }
  nav.services-nav.js-sticky {
    top: 16px;
  }
  nav.services-nav ul li {
    margin: 0.25rem;
    padding: 0.5rem;
    font-size: 3vw;
  }
}

section.services {
  text-align: left;
  margin: 0 auto;
}
@media only screen and (max-width: 639px) {
  section.services {
    padding-top: 4rem;
  }
}
section.services .service {
  padding: 8rem 0 0;
  background: #ffffff;
}
@media only screen and (max-width: 639px) {
  section.services .service {
    padding: 2rem 0 0;
  }
}
section.services .service .content {
  max-width: calc(1200px + 4rem);
  background-color: #ffffff;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  padding: 0 2rem;
  padding-bottom: 8rem;
  flex-wrap: wrap;
}
section.services .service .content .copy {
  width: 60%;
}
section.services .service .content .copy .transition-wrap {
  display: flex;
  flex-direction: column;
  text-align: left;
  justify-content: center;
}
section.services .service .content .copy .transition-wrap > strong {
  width: 100%;
  margin-bottom: 0.5rem;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: 600;
  font-size: 1.25rem;
  letter-spacing: -1px;
}
section.services .service .content .copy .transition-wrap > h1, section.services .service .content .copy .transition-wrap > h2, section.services .service .content .copy .transition-wrap > h3, section.services .service .content .copy .transition-wrap > h4, section.services .service .content .copy .transition-wrap > h5, section.services .service .content .copy .transition-wrap > h6 {
  width: 100%;
  margin-bottom: 3rem;
}
section.services .service .content .copy .transition-wrap > .description {
  max-width: 80%;
  padding: 0;
  margin-bottom: 4rem;
}
section.services .service .content .copy a.cta {
  font-size: 1.5rem;
  display: inline-block;
  margin-top: 3rem;
  border-bottom: 0;
  transition: 0.33s all;
  cursor: pointer;
}
section.services .service .content .copy a.cta:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.services .service .content .copy a.cta:active button {
  background-color: #55494b;
  transform: scale(0.85);
}
@media only screen and (max-width: 639px) {
  section.services .service .content .copy a.cta {
    margin-top: 1rem;
  }
}
section.services .service .content .copy .bullets {
  font-size: 1.5rem;
}
section.services .service .content .copy .bullets li {
  display: flex;
  align-items: center;
  margin-bottom: 1.5rem;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  letter-spacing: -1px;
  font-size: 1.25rem;
}
section.services .service .content .copy button {
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-size: 1rem;
  background-color: #7E7474;
  border: 0;
  font-weight: 700;
  width: auto;
  padding: 1rem;
  margin-top: 0;
  position: relative;
  padding-right: 2.5rem;
  color: #ffffff;
  cursor: pointer;
  overflow: hidden;
  transition: 0.33s all;
}
section.services .service .content .copy button .arrow {
  position: absolute;
  width: 12px;
  height: 100%;
  right: 1rem;
  top: 50%;
  transform: translate(0, -50%);
}
section.services .service .content .copy button .arrow img {
  position: absolute;
  left: 0;
  top: 50%;
  width: 12px;
  transform: translate(0, -50%);
  transition: 0.33s all;
}
section.services .service .content .copy button .arrow img:last-child {
  transform: translate(0, 220%);
}
section.services .service .content .copy button.js-active {
  margin-top: 0;
}
section.services .service .content .copy button.js-active img {
  transform: translate(0, -50%) rotate(180deg);
}
section.services .service .content .copy button:hover .arrow img {
  transform: translate(0, -340%);
}
section.services .service .content .copy button:hover .arrow img:last-child {
  transform: translate(0, -50%);
}
section.services .service .content .image {
  width: 40%;
}
section.services .service .content .image img {
  width: 100%;
}
section.services .service .content .more-tiles {
  width: 100%;
  flex-wrap: wrap;
  margin-top: 4rem;
  height: 0;
  display: flex;
  pointer-events: none;
  overflow: hidden;
}
@media only screen and (max-width: 639px) {
  section.services .service .content .more-tiles {
    margin-top: 0;
  }
}
section.services .service .content .more-tiles.js-active {
  height: auto;
}
section.services .service .content .more-tiles .tile {
  width: 33.33%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 2rem 2rem 4rem 2rem;
  text-align: center;
}
section.services .service .content .more-tiles .tile .icon {
  max-width: 50px;
  height: 50px;
  margin-bottom: 2rem;
}
section.services .service .content .more-tiles .tile strong {
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: 600;
  font-size: 1.25rem;
  margin-bottom: 1rem;
  letter-spacing: -1px;
}
section.services .service .content .more-tiles .tile p {
  font-size: 1.125rem;
}
section.services .service .content button {
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-size: 1rem;
  background-color: #f3f3f3;
  border: 0;
  font-weight: 700;
  width: 100%;
  cursor: pointer;
  padding: 1rem;
  margin-top: 4rem;
  position: relative;
  transition: 0.33s all;
}
section.services .service .content button .arrow {
  position: absolute;
  right: 1rem;
  top: 50%;
  width: 12px;
  height: 100%;
  transform: translate(0, -50%);
  transition: 0.33s;
  overflow: hidden;
}
section.services .service .content button .arrow .top {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -500%);
  transition: 0.33s all;
}
section.services .service .content button .arrow .bot {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  transition: 0.33s all;
}
section.services .service .content button.js-active {
  margin-top: 0;
}
section.services .service .content button.js-active .arrow {
  transform: translate(0, -50%) rotate(180deg);
}
section.services .service .content button:hover .arrow .top {
  transform: translate(0, -50%);
}
section.services .service .content button:hover .arrow .bot {
  transform: translate(0, 400%);
}
section.services .service .content button:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.services .service .content button:active {
  background-color: #d7d5d6;
}
section.services .service.js-flip .content .copy {
  order: 2;
  padding-left: 6rem;
}
section.services .service.js-flip .content .copy > p {
  max-width: 100%;
}
section.services .service.js-flip .content .image {
  order: 1;
}
section.services .service.js-flip .content .more-tiles {
  order: 3;
}
section.services .service.js-flip .content button {
  order: 4;
}
@media only screen and (max-width: 639px) {
  section.services .service .content {
    width: 100%;
    flex-direction: column;
    padding: 0 2rem;
  }
  section.services .service .content .copy {
    width: 100%;
    order: 2;
  }
  section.services .service .content .copy .transition-wrap > h1, section.services .service .content .copy .transition-wrap > h2, section.services .service .content .copy .transition-wrap > h3, section.services .service .content .copy .transition-wrap > h4, section.services .service .content .copy .transition-wrap > h5, section.services .service .content .copy .transition-wrap > h6 {
    font-size: 3.125rem;
    margin-bottom: 1.5rem;
  }
  section.services .service .content .copy .transition-wrap > p {
    max-width: 100%;
    margin-bottom: 1.5rem;
  }
  section.services .service .content .copy .transition-wrap .bullets {
    margin-bottom: 2rem;
  }
  section.services .service .content .image {
    order: 1;
    width: 100%;
    margin-bottom: 2rem;
  }
  section.services .service .content .more-tiles {
    order: 3;
    flex-wrap: wrap;
  }
  section.services .service .content .more-tiles .tile {
    width: 100%;
    padding: 0 0 3rem;
  }
  section.services .service .content button {
    order: 4;
    margin-top: 0;
    margin-bottom: 2rem;
  }
  section.services .service .image {
    width: 100%;
  }
  section.services .service.js-flip .content .copy {
    padding-left: 0;
  }
}
section.services .footer {
  min-height: 600px;
}
@media only screen and (max-width: 767px) {
  section.services .footer {
    min-height: 360px;
  }
}

section.shortcode {
  padding: 6rem 2rem;
}
section.shortcode .copy {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  margin-bottom: 1rem;
  padding: 0 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
section.shortcode .copy .link a {
  font-size: 1.25rem;
  padding-right: 24px;
  position: relative;
}
section.shortcode .copy .link a .arrow {
  position: absolute;
  right: 0;
  height: 100%;
  width: 16px;
  top: 0;
  overflow: hidden;
}
section.shortcode .copy .link a .arrow svg {
  width: 12px;
  height: 12px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  transition: 0.33s all;
}
section.shortcode .copy .link a .arrow svg:nth-child(2) {
  transform: translate(0, 250%);
}
section.shortcode .copy .link a:hover .arrow svg:nth-child(1) {
  transform: translate(0, -300%);
}
section.shortcode .copy .link a:hover .arrow svg:nth-child(2) {
  transform: translate(0, -50%);
}
section.shortcode .copy .link a:active {
  box-shadow: none;
}
@media only screen and (max-width: 479px) {
  section.shortcode .copy {
    flex-direction: column;
  }
  section.shortcode .copy .link {
    margin-top: 1rem;
  }
}
section.shortcode .wrapper {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
section.shortcode #sb_instagram #sbi_load .sbi_load_btn {
  display: inline-block;
  color: #1d191a;
  padding: 0.5rem 1.5rem;
  border: 2px solid #eacc4a;
  font-weight: bold;
  position: relative;
  z-index: 2;
  transition: 0.33s all;
  background-color: transparent !important;
  border-radius: 0;
}
section.shortcode #sb_instagram #sbi_load .sbi_load_btn:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
  background-color: #eacc4a;
}
section.shortcode #sb_instagram #sbi_load .sbi_load_btn:active {
  border: 2px solid #ddbb1c;
  background-color: #ddbb1c;
  box-shadow: none;
  outline: none;
}
section.shortcode #sb_instagram #sbi_load .sbi_load_btn:after {
  content: "";
  position: absolute;
  width: 0%;
  height: 100%;
  background-color: #eacc4a;
  top: 0;
  left: 0;
  transition: 0.33s all;
  z-index: 1;
}
section.shortcode #sb_instagram #sbi_load .sbi_load_btn:hover {
  cursor: pointer;
  text-decoration: none;
}
section.shortcode #sb_instagram #sbi_load .sbi_load_btn:hover:after {
  width: 100%;
}
section.shortcode #sb_instagram .sbi_load_btn .sbi_btn_text {
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: bold;
  position: relative;
  z-index: 2;
  padding: 1rem;
  font-size: 1.125rem;
  color: #1d191a;
}
section.shortcode #sb_instagram #sbi_load .sbi_loader {
  background-color: #1d191a !important;
}
@media only screen and (max-width: 639px) {
  section.shortcode {
    padding: 4rem 1.5rem;
  }
  section.shortcode .copy h1, section.shortcode .copy h2, section.shortcode .copy h3, section.shortcode .copy h4, section.shortcode .copy h5, section.shortcode .copy h6 {
    font-size: 2.25rem;
  }
}

section.team {
  padding: 2rem 0 0;
  text-align: center;
  margin: 0 auto;
  background: #f2f2f2;
}
section.team > h1, section.team h2, section.team h3, section.team h4, section.team h5, section.team h6 {
  margin-bottom: 2rem;
}
@media only screen and (max-width: 639px) {
  section.team > h1, section.team h2, section.team h3, section.team h4, section.team h5, section.team h6 {
    font-size: 2.25rem;
  }
}
section.team > .description {
  max-width: 1000px;
  margin: 0 auto;
  margin-bottom: 4rem;
  padding: 1rem;
}
section.team a.cta {
  font-size: 1.5rem;
}
section.team .team-members {
  margin: 0 auto;
  overflow: hidden;
  position: relative;
}
section.team .team-members .glide-team {
  z-index: 2;
  position: relative;
}
section.team .team-members .glide__slides {
  overflow: visible;
  margin-bottom: 230px;
}
section.team .team-members .member {
  position: relative;
}
section.team .team-members .member .image {
  margin: 0 auto;
  position: relative;
}
section.team .team-members .member .image .mugshot {
  width: 100%;
  position: relative;
  margin: 0 auto;
  z-index: 2;
}
section.team .team-members .member .image .graphic {
  max-width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  transition: 0.33s all;
}
section.team .team-members .member .bio {
  position: absolute;
  bottom: 0;
  width: 100%;
  transform: translate(0, 100%);
  background-color: #f2f2f2;
}
section.team .team-members .member .bio h1, section.team .team-members .member .bio h2, section.team .team-members .member .bio h3, section.team .team-members .member .bio h4, section.team .team-members .member .bio h5, section.team .team-members .member .bio h6 {
  margin-top: 2.5rem;
  width: 100%;
  font-weight: 300;
  margin-bottom: 0.75rem;
  font-size: 1.375rem;
  letter-spacing: 0;
}
section.team .team-members .member .bio p {
  margin-bottom: 1.75rem;
  font-size: 1.125rem;
}
section.team .team-members .member .social {
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: 0.33s all;
  padding-bottom: 4rem;
}
section.team .team-members .member .social a {
  border-bottom: 0;
  margin-right: 2rem;
  font-size: 0;
}
section.team .team-members .member .social a .icons {
  width: 24px;
  height: 24px;
  position: relative;
  overflow: hidden;
  transition: 0.33s all;
}
section.team .team-members .member .social a .icons .icon {
  width: 100%;
  height: 300%;
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  transition: 0.33s all;
}
section.team .team-members .member .social a .icons .icon svg {
  width: 24px;
  height: 24px;
}
section.team .team-members .member .social a:hover .icons .icon {
  top: -200%;
}
section.team .team-members .member .social a:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.team .team-members .member .social a:active {
  box-shadow: none;
}
section.team .team-members .member .social a:active .icons {
  transform: scale(0.8);
}
section.team .team-members .member .social a:last-child {
  margin-right: 0;
}
@media only screen and (max-width: 768px) {
  section.team .team-members .member .social {
    pointer-events: all;
    opacity: 1;
  }
}
section.team .team-members .member:hover .social {
  pointer-events: all;
  opacity: 1;
}
section.team .team-members .member:hover .image .graphic {
  transform: translate(-50%, -50%) scale(1.05);
}
section.team .team-members .glide-team .glide__arrows .glide__arrow {
  top: calc(50% - 115px);
  opacity: 0.66;
  width: 100%;
  max-width: 80px;
  padding: 0;
  border: 0;
  transition: 0.33s all;
  font-size: 0;
}
section.team .team-members .glide-team .glide__arrows .glide__arrow:hover {
  opacity: 1;
}
section.team .team-members .glide-team .glide__arrows .glide__arrow .background path {
  transition: 0.33s all;
  fill: #8cd0e8;
}
section.team .team-members .glide-team .glide__arrows .glide__arrow.js-disabled {
  cursor: default;
}
section.team .team-members .glide-team .glide__arrows .glide__arrow.js-disabled:hover {
  opacity: 0.66;
}
section.team .team-members .glide-team .glide__arrows .glide__arrow.js-disabled .background path {
  fill: #7E7474;
}
section.team .team-members .glide-team .glide__arrows .glide__arrow.js-disabled:focus {
  box-shadow: 0;
  outline: none;
}
section.team .team-members .glide-team .glide__arrows .glide__arrow.js-disabled:active .background path {
  fill: #7E7474;
}
section.team .team-members .glide-team .glide__arrows .glide__arrow:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.team .team-members .glide-team .glide__arrows .glide__arrow:active {
  box-shadow: none;
}
section.team .team-members .glide-team .glide__arrows .glide__arrow:active .background path {
  fill: #52bbd9;
}
section.team .team-members .glide-team .glide__arrows .glide__arrow--left {
  transform: translateY(-50%) scale(-1);
}
@media only screen and (max-width: 639px) {
  section.team .team-members .glide-team .glide__arrows {
    display: none;
  }
}
section.team .team-members .background {
  width: 100%;
  height: calc(100% - 230px);
  position: absolute;
  z-index: 1;
  background-color: #E5E5E5;
  top: 0;
  left: 0;
}

section.team_static {
  padding: 2rem 0 0;
  text-align: center;
  margin: 0 auto;
  background: #f2f2f2;
}
section.team_static > h1, section.team_static h2, section.team_static h3, section.team_static h4, section.team_static h5, section.team_static h6 {
  margin-bottom: 2rem;
}
@media only screen and (max-width: 639px) {
  section.team_static > h1, section.team_static h2, section.team_static h3, section.team_static h4, section.team_static h5, section.team_static h6 {
    font-size: 2.25rem;
  }
}
section.team_static > .description {
  max-width: 1000px;
  margin: 0 auto;
  margin-bottom: 4rem;
  padding: 1rem;
}
section.team_static a.cta {
  font-size: 1.5rem;
}
section.team_static .team-members {
  margin: 0 auto;
  overflow: hidden;
  position: relative;
}
section.team_static .team-members .team {
  width: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 230px;
}
@media only screen and (max-width: 639px) {
  section.team_static .team-members .team {
    margin-bottom: 0;
  }
}
section.team_static .team-members .member {
  width: calc(33.333% - 0.5rem);
  position: relative;
}
@media only screen and (max-width: 639px) {
  section.team_static .team-members .member {
    width: 100%;
    margin-bottom: 230px;
  }
}
section.team_static .team-members .member .image {
  margin: 0 auto;
  position: relative;
}
section.team_static .team-members .member .image .mugshot {
  width: 100%;
  position: relative;
  margin: 0 auto;
  z-index: 2;
}
section.team_static .team-members .member .image .graphic {
  max-width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  transition: 0.33s all;
}
section.team_static .team-members .member .bio {
  position: absolute;
  bottom: 0;
  width: 100%;
  transform: translate(0, 100%);
  background-color: transparent;
}
section.team_static .team-members .member .bio h1, section.team_static .team-members .member .bio h2, section.team_static .team-members .member .bio h3, section.team_static .team-members .member .bio h4, section.team_static .team-members .member .bio h5, section.team_static .team-members .member .bio h6 {
  margin-top: 2.5rem;
  width: 100%;
  font-weight: 300;
  margin-bottom: 0.75rem;
  font-size: 1.375rem;
  letter-spacing: 0;
}
section.team_static .team-members .member .bio p {
  margin-bottom: 1.75rem;
  font-size: 1.125rem;
}
@media only screen and (max-width: 639px) {
  section.team_static .team-members .member .bio {
    z-index: 4;
  }
}
section.team_static .team-members .member .social {
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: 0.33s all;
  padding-bottom: 4rem;
}
section.team_static .team-members .member .social a {
  border-bottom: 0;
  margin-right: 2rem;
}
section.team_static .team-members .member .social a .icons {
  width: 24px;
  height: 24px;
  position: relative;
  overflow: hidden;
  transition: 0.33s all;
}
section.team_static .team-members .member .social a .icons .icon {
  width: 100%;
  height: 300%;
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  transition: 0.33s all;
}
section.team_static .team-members .member .social a .icons .icon svg {
  width: 24px;
  height: 24px;
}
section.team_static .team-members .member .social a:hover .icons .icon {
  top: -200%;
}
section.team_static .team-members .member .social a:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.team_static .team-members .member .social a:active {
  box-shadow: none;
}
section.team_static .team-members .member .social a:active .icons {
  transform: scale(0.8);
}
section.team_static .team-members .member .social a:last-child {
  margin-right: 0;
}
@media only screen and (max-width: 768px) {
  section.team_static .team-members .member .social {
    pointer-events: all;
    opacity: 1;
  }
}
section.team_static .team-members .member:hover .social {
  pointer-events: all;
  opacity: 1;
}
section.team_static .team-members .member:hover .image .graphic {
  transform: translate(-50%, -50%) scale(1.05);
}
section.team_static .team-members .background {
  width: 100%;
  height: calc(100% - 230px);
  position: absolute;
  z-index: 1;
  background-color: #E5E5E5;
  top: 0;
  left: 0;
}

section.testimonials {
  padding: 2rem 0 0;
  text-align: center;
  margin: 0 auto;
  background: #f2f2f2;
}
section.testimonials > h1, section.testimonials h2, section.testimonials h3, section.testimonials h4, section.testimonials h5, section.testimonials h6 {
  margin-bottom: 0;
}
@media only screen and (max-width: 639px) {
  section.testimonials > h1, section.testimonials h2, section.testimonials h3, section.testimonials h4, section.testimonials h5, section.testimonials h6 {
    font-size: 2.25rem;
  }
}
section.testimonials > .description {
  max-width: 1000px;
  margin: 0 auto;
  margin-bottom: 2rem;
  padding: 1rem;
}
section.testimonials .testimonial_slider {
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  padding-bottom: 6rem;
}
section.testimonials .testimonial_slider .testimonial-glide {
  z-index: 2;
  position: relative;
  width: calc(100% - 188px);
  margin: 0 auto;
  box-shadow: rgba(26, 28, 26, 0.04) 0px 8px 16px;
}
@media only screen and (max-width: 639px) {
  section.testimonials .testimonial_slider .testimonial-glide {
    width: calc(100% - 16px);
  }
}
section.testimonials .testimonial_slider .testimonial-glide .glide__slide {
  background: #ffffff;
  padding: 2rem 2.5rem 3.5rem;
  text-align: center;
  height: auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
section.testimonials .testimonial_slider .testimonial-glide .glide__slide .image {
  max-width: 160px;
  margin: 0 auto;
  margin-bottom: 0rem;
}
section.testimonials .testimonial_slider .testimonial-glide .glide__slide .copy {
  max-width: 80%;
  margin: 0 auto;
  padding-bottom: 2rem;
}
section.testimonials .testimonial_slider .testimonial-glide .glide__slide .copy blockquote {
  margin-bottom: 1.5rem;
  position: relative;
}
section.testimonials .testimonial_slider .testimonial-glide .glide__slide .copy blockquote:after {
  content: "❛❛";
  position: absolute;
  color: #8cd0e8;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  top: -1.5rem;
  left: -4rem;
  font-size: 3.5rem;
  opacity: 0.5;
}
@media only screen and (max-width: 639px) {
  section.testimonials .testimonial_slider .testimonial-glide .glide__slide .copy blockquote:after {
    left: -2rem;
  }
}
section.testimonials .testimonial_slider .testimonial-glide .glide__slide .copy .job_title {
  color: #7E7474;
}
@media only screen and (max-width: 639px) {
  section.testimonials .testimonial_slider .testimonial-glide .glide__slide .copy {
    font-size: 1rem;
    line-height: 1.4;
  }
}
@media only screen and (max-width: 639px) {
  section.testimonials .testimonial_slider .testimonial-glide .glide__slide {
    padding: 1rem 1rem 2.5rem 1rem;
  }
}
section.testimonials .testimonial_slider .glide__slides {
  overflow: visible;
  align-items: stretch;
}
section.testimonials .testimonial_slider .glide__arrows .glide__arrow {
  top: 50%;
  opacity: 0.66;
  width: 100%;
  max-width: 80px;
  padding: 0;
  border: 0;
  transition: 0.33s all;
  font-size: 0;
}
section.testimonials .testimonial_slider .glide__arrows .glide__arrow:hover {
  opacity: 1;
}
section.testimonials .testimonial_slider .glide__arrows .glide__arrow .background path {
  transition: 0.33s all;
  fill: #8cd0e8;
}
section.testimonials .testimonial_slider .glide__arrows .glide__arrow.js-disabled {
  cursor: default;
}
section.testimonials .testimonial_slider .glide__arrows .glide__arrow.js-disabled:hover {
  opacity: 0.66;
}
section.testimonials .testimonial_slider .glide__arrows .glide__arrow.js-disabled .background path {
  fill: #7E7474;
}
section.testimonials .testimonial_slider .glide__arrows .glide__arrow.js-disabled:focus {
  box-shadow: 0;
  outline: none;
}
section.testimonials .testimonial_slider .glide__arrows .glide__arrow.js-disabled:active .background path {
  fill: #7E7474;
}
section.testimonials .testimonial_slider .glide__arrows .glide__arrow:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.testimonials .testimonial_slider .glide__arrows .glide__arrow:active {
  box-shadow: none;
}
section.testimonials .testimonial_slider .glide__arrows .glide__arrow:active .background path {
  fill: #52bbd9;
}
section.testimonials .testimonial_slider .glide__arrows .glide__arrow--left {
  transform: translateY(-50%) scale(-1);
  left: -94px;
}
section.testimonials .testimonial_slider .glide__arrows .glide__arrow--right {
  transform: translateY(-50%);
  right: -94px;
}
@media only screen and (max-width: 639px) {
  section.testimonials .testimonial_slider .glide__arrows {
    display: none;
  }
}
section.testimonials .testimonial_slider .background {
  width: 100%;
  height: calc(100% - 230px);
  position: absolute;
  z-index: 1;
  background-color: #E5E5E5;
  top: 0;
  left: 0;
}

div#contact-us .modal__container {
  max-width: 1200px;
  width: calc(100% - 2rem);
  background-color: #ffffff;
  padding: 1rem;
  overflow: auto;
}
div#contact-us .modal__container .modal__close {
  top: 0;
  right: 0;
  padding: 1.25rem 1.1rem;
  font-size: 2rem;
  background: white;
  cursor: pointer;
}
div#contact-us .modal__container .modal__content {
  background-color: #8cd0e8;
  padding: 1rem;
  display: flex;
}
div#contact-us .modal__container .modal__content .information {
  width: 40%;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  font-family: "GT Super Text Book", "Times New Roman", serif;
}
div#contact-us .modal__container .modal__content .information h2 {
  margin-bottom: 1.5rem;
  font-size: 72px;
  font-size: 4.5rem;
  line-height: 0.95;
  letter-spacing: -4px;
}
div#contact-us .modal__container .modal__content .information a {
  color: #1d191a;
}
div#contact-us .modal__container .modal__content .information .email, div#contact-us .modal__container .modal__content .information .phone, div#contact-us .modal__container .modal__content .information .location, div#contact-us .modal__container .modal__content .information div {
  margin-bottom: 1.5rem;
}
div#contact-us .modal__container .modal__content .information .new_business p {
  font-size: 1rem;
}
div#contact-us .modal__container .modal__content .information .phone.desktop {
  border-bottom: 0;
}
div#contact-us .modal__container .modal__content .information .phone.mobile {
  display: none;
}
div#contact-us .modal__container .modal__content .information .address {
  margin-bottom: 0.75rem;
}
div#contact-us .modal__container .modal__content .information .location {
  padding-right: 22px;
  position: relative;
}
div#contact-us .modal__container .modal__content .information .location .arrow {
  position: absolute;
  right: 0;
  height: 100%;
  width: 16px;
  top: 0;
  overflow: hidden;
}
div#contact-us .modal__container .modal__content .information .location .arrow svg {
  width: 12px;
  height: 12px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  transition: 0.33s all;
}
div#contact-us .modal__container .modal__content .information .location .arrow svg:nth-child(2) {
  transform: translate(0, 250%);
}
div#contact-us .modal__container .modal__content .information .location:hover .arrow svg:nth-child(1) {
  transform: translate(0, -300%);
}
div#contact-us .modal__container .modal__content .information .location:hover .arrow svg:nth-child(2) {
  transform: translate(0, -50%);
}
div#contact-us .modal__container .modal__content .information .social {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-bottom: 1.5rem;
}
div#contact-us .modal__container .modal__content .information .social a {
  font-size: 0;
  margin-right: 2.5rem;
  width: 20px;
  height: 20px;
  margin-bottom: 1rem;
  border-bottom: 0;
}
div#contact-us .modal__container .modal__content .information .social a .icons {
  width: 20px;
  height: 20px;
  position: relative;
  overflow: hidden;
  transition: 0.33s all;
}
div#contact-us .modal__container .modal__content .information .social a .icons .icon {
  width: 100%;
  height: 300%;
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  transition: 0.33s all;
}
div#contact-us .modal__container .modal__content .information .social a .icons .icon svg {
  width: 20px;
  height: 20px;
}
@media only screen and (max-width: 639px) {
  div#contact-us .modal__container .modal__content .information .social a {
    width: 30px;
  }
  div#contact-us .modal__container .modal__content .information .social a .icons {
    width: 30px;
  }
  div#contact-us .modal__container .modal__content .information .social a .icons .icon svg {
    width: 30px;
  }
}
div#contact-us .modal__container .modal__content .information .social a:hover .icons .icon {
  top: -200%;
}
div#contact-us .modal__container .modal__content .information .social a:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
div#contact-us .modal__container .modal__content .information .social a:active .icons {
  transform: scale(0.8);
}
@media only screen and (max-width: 639px) {
  div#contact-us .modal__container .modal__content .information .social {
    margin-bottom: 0;
  }
}
div#contact-us .modal__container .modal__content .information .logo {
  max-width: 140px;
}
div#contact-us .modal__container .modal__content .information .logo img:nth-child(2) {
  margin-top: 1.5rem;
}
div#contact-us .modal__container .modal__content .form {
  width: 60%;
  padding: 2rem;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: 300;
}
div#contact-us .modal__container .modal__content .form input, div#contact-us .modal__container .modal__content .form textarea {
  background-color: transparent;
  border: 1px solid #1d191a;
  transition: 0.33s all;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: 300;
  color: #1d191a;
  padding: 0.5rem 1rem;
}
div#contact-us .modal__container .modal__content .form input:focus, div#contact-us .modal__container .modal__content .form textarea:focus {
  background-color: #ffffff;
  border: 3px solid #1d191a;
}
@media only screen and (max-width: 639px) {
  div#contact-us .modal__container .modal__content .form {
    padding: 1rem 0;
  }
}
div#contact-us .modal__container .modal__content .form textarea {
  padding: 1rem;
}
div#contact-us .modal__container .modal__content .form .logo {
  display: none;
}
div#contact-us .modal__container .modal__content .form .ninja-forms-req-symbol {
  display: none;
}
div#contact-us .modal__container .modal__content .form .submit-container {
  text-align: right;
}
div#contact-us .modal__container .modal__content .form .submit-container input {
  color: #ffffff;
  background-color: #1d191a !important;
  padding: 0.5rem 3rem 0.5rem 1rem;
  height: 48px;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: 600;
  border: 0;
  cursor: pointer;
}
div#contact-us .modal__container .modal__content .form .submit-container input:focus {
  border: 0;
}
@media only screen and (max-width: 639px) {
  div#contact-us .modal__container .modal__content .form .submit-container input {
    width: 100%;
    text-align: left;
  }
}
div#contact-us .modal__container .modal__content .form .submit-container .submit-wrap {
  justify-content: flex-end;
}
div#contact-us .modal__container .modal__content .form .submit-container .nf-field-element {
  position: relative;
  overflow: hidden;
  width: auto;
}
div#contact-us .modal__container .modal__content .form .submit-container .nf-field-element:before {
  position: absolute;
  content: "";
  width: 16px;
  height: 16px;
  background-image: url("../images/right-chevron-white.svg");
  background-size: 16px 16px;
  background-repeat: no-repeat;
  right: 1rem;
  top: 50%;
  transform: translate(0, -50%);
  transition: 0.33s all;
}
div#contact-us .modal__container .modal__content .form .submit-container .nf-field-element:after {
  position: absolute;
  content: "";
  width: 16px;
  height: 16px;
  background-image: url("../images/right-chevron-white.svg");
  background-size: 16px 16px;
  background-repeat: no-repeat;
  right: 1rem;
  top: 50%;
  transform: translate(0, 180%);
  transition: 0.33s all;
}
div#contact-us .modal__container .modal__content .form .submit-container .nf-field-element:hover:before {
  transform: translate(0, -270%);
}
div#contact-us .modal__container .modal__content .form .submit-container .nf-field-element:hover:after {
  transform: translate(0, -50%);
}
div#contact-us .modal__container .modal__content .form .nf-form-errors {
  display: none;
}
@media only screen and (max-width: 639px) {
  div#contact-us .modal__container .nf-form-content {
    padding: 1rem 0.5rem;
  }
}
div#contact-us .modal__container .nf-field-container .nf-after-field {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0rem 0.5rem;
  background: #dd4d4d;
}
div#contact-us .modal__container .nf-field-container .nf-after-field .nf-input-limit {
  margin-top: 0;
}
div#contact-us .modal__container .nf-field-container .nf-after-field .nf-error .nf-error-msg {
  color: #ffffff;
  margin-right: 0;
  font-size: 14px;
  font-weight: 600;
}
div#contact-us .modal__container .nf-field-container .nf-error .ninja-forms-field {
  border-color: #dd4d4d !important;
}
div#contact-us .modal__container .nf-field-container .nf-error.field-wrap .nf-field-element:after {
  display: none;
}
div#contact-us .modal__container .nf-field-container .nf-pass.field-wrap .nf-field-element:after {
  display: none;
}
div#contact-us .modal__container .nf-field-container .nf-pass .ninja-forms-field {
  border-color: #1d191a !important;
}
div#contact-us .modal__container .nf-response-msg {
  display: flex;
  align-items: center;
  justify-content: center;
}
div#contact-us .modal__container .nf-response-msg.js-hide {
  display: none;
}
div#contact-us .modal__container .nf-response-msg .post-send {
  padding: 250px 0;
  text-align: center;
}
div#contact-us .modal__container .nf-response-msg .post-send p {
  margin-bottom: 1rem;
  font-weight: 600;
}
div#contact-us .modal__container .nf-response-msg .post-send p:last-child {
  display: inline-block;
  position: relative;
}
div#contact-us .modal__container .nf-response-msg .post-send p:last-child:after {
  position: absolute;
  content: "";
  width: 16px;
  height: 16px;
  background-image: url("../images/right-chevron-white.svg");
  background-size: 16px 16px;
  background-repeat: no-repeat;
  right: 1rem;
  top: 50%;
  transform: translate(0, -50%);
}
div#contact-us .modal__container .nf-response-msg .post-send button {
  color: #ffffff;
  background-color: #1d191a !important;
  padding: 0.5rem 3rem 0.5rem 1rem;
  height: 48px;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: 600;
  font-size: 1rem;
  border: 0;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  div#contact-us .modal__container {
    width: 100%;
    padding: 0;
    background-color: #8cd0e8;
    height: 100vh;
    overflow: auto;
  }
  div#contact-us .modal__container .modal__close {
    top: 1rem;
    right: 1rem;
    padding: 0.625rem 0.5rem;
    font-size: 1.5rem;
    background: white;
    cursor: pointer;
  }
  div#contact-us .modal__container .modal__content {
    flex-direction: column;
  }
  div#contact-us .modal__container .modal__content .information {
    width: 100%;
    padding: 2rem 2rem 0 2rem;
  }
}
@media only screen and (max-width: 767px) and (max-width: 639px) {
  div#contact-us .modal__container .modal__content .information {
    padding: 4rem 1rem 0;
  }
}
@media only screen and (max-width: 767px) {
  div#contact-us .modal__container .modal__content .information h2 {
    font-size: 3rem;
    letter-spacing: -0.065em;
  }
  div#contact-us .modal__container .modal__content .information h2 br {
    display: none;
  }
  div#contact-us .modal__container .modal__content .information .logo {
    display: none;
  }
  div#contact-us .modal__container .modal__content .information .phone {
    margin-bottom: 0;
  }
  div#contact-us .modal__container .modal__content .information .phone.desktop {
    display: none;
  }
  div#contact-us .modal__container .modal__content .information .phone.mobile {
    display: inline-block;
    cursor: pointer;
  }
  div#contact-us .modal__container .modal__content .form {
    width: 100%;
  }
  div#contact-us .modal__container .modal__content .form .logo {
    width: 100%;
    text-align: center;
    display: flex;
    padding: 1rem 0.5rem;
    max-width: none;
    justify-content: space-between;
  }
  div#contact-us .modal__container .modal__content .form .logo img {
    max-width: 40%;
    width: 140px;
    margin: 0;
  }
  div#contact-us .modal__container .modal__content .form .logo img:nth-child(2) {
    margin-left: 1rem;
  }
}

section.full-width_copy {
  padding: 8.75rem 2rem;
  overflow: hidden;
  position: relative;
}
section.full-width_copy .copy {
  width: 60%;
  max-width: 960px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
section.full-width_copy .copy h1, section.full-width_copy .copy h2, section.full-width_copy .copy h3, section.full-width_copy .copy h4, section.full-width_copy .copy h5, section.full-width_copy .copy h6 {
  font-size: 3.5rem;
  line-height: 1.125;
  letter-spacing: -3px;
  margin-bottom: 1rem;
}
section.full-width_copy .copy h1 span, section.full-width_copy .copy h2 span, section.full-width_copy .copy h3 span, section.full-width_copy .copy h4 span, section.full-width_copy .copy h5 span, section.full-width_copy .copy h6 span {
  display: inline-block;
}
section.full-width_copy .background-shape {
  position: absolute;
  width: auto;
  max-height: 100%;
  top: 0;
  z-index: 1;
}
section.full-width_copy .background {
  width: 100%;
  position: absolute !important;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 0;
}
@media only screen and (max-width: 639px) {
  section.full-width_copy {
    padding: 6rem 2rem;
  }
  section.full-width_copy .copy {
    width: 100%;
  }
  section.full-width_copy .copy h1, section.full-width_copy .copy h2, section.full-width_copy .copy h3, section.full-width_copy .copy h4, section.full-width_copy .copy h5, section.full-width_copy .copy h6 {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 419px) {
  section.full-width_copy .copy h1, section.full-width_copy .copy h2, section.full-width_copy .copy h3, section.full-width_copy .copy h4, section.full-width_copy .copy h5, section.full-width_copy .copy h6 {
    font-size: 2rem;
  }
}

section.breakthrough {
  margin: 4rem 0;
  position: relative;
}
section.breakthrough .content {
  position: relative;
}
section.breakthrough .content .wrapper {
  width: calc(100% - 4rem);
  max-width: 1200px;
  display: flex;
  margin: 0 auto;
  flex-direction: row;
  position: relative;
  align-items: center;
  justify-content: flex-start;
  min-height: 600px;
  height: auto;
  z-index: 3;
}
section.breakthrough .content .wrapper .copy {
  display: flex;
  width: 60%;
  padding: 5rem 0;
  height: 100%;
  flex-direction: column;
  text-align: left;
  align-items: flex-start;
  justify-content: center;
  z-index: 2;
  padding-left: 8%;
}
section.breakthrough .content .wrapper .copy .description {
  width: 100%;
  opacity: 0;
  max-width: 600px;
}
section.breakthrough .content .wrapper .copy h1, section.breakthrough .content .wrapper .copy h2, section.breakthrough .content .wrapper .copy h3, section.breakthrough .content .wrapper .copy h4, section.breakthrough .content .wrapper .copy h5, section.breakthrough .content .wrapper .copy h6 {
  width: auto;
  margin-bottom: 1rem;
  opacity: 0;
}
section.breakthrough .content .wrapper .image {
  width: 40%;
  height: auto;
  align-self: flex-end;
  z-index: 3;
}
section.breakthrough .content .wrapper .image img {
  position: relative;
  width: 100%;
  height: auto;
  opacity: 0;
  bottom: 100px;
}
section.breakthrough .content .background {
  width: 100%;
  height: 100%;
  top: 0;
  position: absolute !important;
  z-index: 1;
  overflow: hidden;
  opacity: 0;
}
section.breakthrough .content .background img {
  opacity: 0;
}
section.breakthrough .f-animation, section.breakthrough .f-animation-bg {
  width: 100%;
  position: absolute;
  margin: 0 auto;
  z-index: 2;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  display: flex;
  align-items: center;
  height: 100%;
  pointer-events: none;
}
section.breakthrough .f-animation .image, section.breakthrough .f-animation-bg .image {
  position: relative;
  margin: 0 auto;
  width: 180px;
}
section.breakthrough .f-animation .image img, section.breakthrough .f-animation-bg .image img {
  width: 102%;
  position: absolute;
  top: 0;
  left: 0;
}
section.breakthrough .f-animation .image img:first-child, section.breakthrough .f-animation-bg .image img:first-child {
  position: relative;
}
section.breakthrough .f-animation-bg {
  z-index: 1;
}
@media only screen and (max-width: 768px) {
  section.breakthrough .content .wrapper .copy {
    width: 40%;
  }
  section.breakthrough .content .wrapper .image {
    width: 60%;
  }
}
@media only screen and (max-width: 639px) {
  section.breakthrough .content .wrapper {
    padding: 0 1rem;
    width: 100%;
    flex-direction: column;
  }
  section.breakthrough .content .wrapper .copy {
    width: 100%;
    order: 2;
    margin-left: 0;
    margin-top: -136px;
    padding: 0 2rem 2rem 2rem;
  }
  section.breakthrough .content .wrapper .copy h1, section.breakthrough .content .wrapper .copy h2, section.breakthrough .content .wrapper .copy h3, section.breakthrough .content .wrapper .copy h4, section.breakthrough .content .wrapper .copy h5, section.breakthrough .content .wrapper .copy h6 {
    font-size: 2.25rem;
    margin-bottom: 3rem;
  }
  section.breakthrough .content .wrapper .image {
    width: 100%;
    order: 1;
  }
  section.breakthrough .content .wrapper .image img {
    bottom: 160px;
  }
  section.breakthrough .f-animation .image img, section.breakthrough .f-animation-bg .image img {
    width: 118%;
  }
}

section.blog {
  margin: 4rem 0;
  padding-top: 8rem;
  position: relative;
}
@media only screen and (max-width: 479px) {
  section.blog {
    padding-top: 3rem;
  }
}
section.blog .content {
  position: relative;
}
section.blog .content .wrapper {
  width: calc(100% - 4rem);
  max-width: 1200px;
  display: flex;
  margin: 0 auto;
  flex-direction: column;
  position: relative;
  align-items: center;
  justify-content: flex-start;
  height: auto;
  z-index: 3;
  flex-wrap: wrap;
}
section.blog .content .wrapper h1, section.blog .content .wrapper h2, section.blog .content .wrapper h3, section.blog .content .wrapper h4, section.blog .content .wrapper h5, section.blog .content .wrapper h6 {
  width: 100%;
  text-align: center;
}
@media only screen and (max-width: 479px) {
  section.blog .content .wrapper h1, section.blog .content .wrapper h2, section.blog .content .wrapper h3, section.blog .content .wrapper h4, section.blog .content .wrapper h5, section.blog .content .wrapper h6 {
    font-size: 3rem;
  }
}
section.blog .content .wrapper .criteria {
  width: 100%;
  margin: 0 auto;
  margin-top: 4rem;
  max-width: 792px;
}
section.blog .content .wrapper .criteria .search {
  font-size: 1rem;
}
section.blog .content .wrapper .criteria .search form {
  display: flex;
  width: 100%;
  align-items: stretch;
}
section.blog .content .wrapper .criteria .search form label {
  font-size: 0;
  width: 100%;
  position: relative !important;
  height: 100%;
  clip-path: none;
  margin: 0;
}
section.blog .content .wrapper .criteria .search form input[type=search] {
  width: calc(100% - 54px);
  border: 0;
  border-bottom: 2px solid #b8c950;
  margin: 0;
  outline-offset: 0;
  padding: 0.25rem 0;
  font-size: 1.25rem;
  height: 54px;
  width: 100%;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  letter-spacing: -0.0275em;
  transition: 0.33s all;
}
section.blog .content .wrapper .criteria .search form input[type=search]:focus {
  outline: none;
  border-bottom: 2px solid #6a7524;
}
section.blog .content .wrapper .criteria .search form input[type=search]:focus + .submit-wrap input[type=submit] {
  background: #6a7524;
}
section.blog .content .wrapper .criteria .search form .submit-wrap {
  position: relative;
}
section.blog .content .wrapper .criteria .search form .submit-wrap label {
  font-size: 0;
}
section.blog .content .wrapper .criteria .search form .submit-wrap input[type=submit] {
  border: 0;
  background: #b8c950;
  margin: 0;
  font-size: 0;
  width: 54px;
  height: 54px;
  position: relative;
  z-index: 1;
  cursor: pointer;
  color: #7E7474;
  transition: 0.33s all;
}
section.blog .content .wrapper .criteria .search form .submit-wrap input[type=submit]:focus, section.blog .content .wrapper .criteria .search form .submit-wrap input[type=submit]:hover {
  background: #6a7524;
}
section.blog .content .wrapper .criteria .search form .submit-wrap img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 20px;
  height: 20px;
  z-index: 2;
  pointer-events: none;
}
section.blog .content .wrapper .criteria .filters {
  font-size: 1rem;
  display: flex;
  width: 100%;
  max-width: 580px;
  margin: 0 auto;
  margin-top: 3rem;
  justify-content: space-between;
  flex-wrap: wrap;
}
section.blog .content .wrapper .criteria .filters .categories {
  width: calc(50% - 0.75rem);
}
section.blog .content .wrapper .criteria .filters .sort {
  width: calc(50% - 0.75rem);
}
@media only screen and (max-width: 479px) {
  section.blog .content .wrapper .criteria .filters .categories, section.blog .content .wrapper .criteria .filters .sort {
    width: 100%;
    margin-bottom: 1rem;
  }
}
section.blog .content .wrapper .criteria .filters > div strong {
  font-size: 1rem;
  line-height: 1.167;
  display: block;
  margin-bottom: 0.5rem;
}
section.blog .content .wrapper .criteria .filters > div .dropdown {
  position: relative;
}
section.blog .content .wrapper .criteria .filters > div .dropdown select {
  width: 100%;
  border: 0;
  padding: 1rem 1.5rem;
  background-color: #f3f3f3;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-size: 1rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  text-indent: 1px;
  text-overflow: "";
}
section.blog .content .wrapper .criteria .filters > div .dropdown select::-ms-expand {
  display: none;
}
section.blog .content .wrapper .criteria .filters > div .dropdown:after {
  content: "";
  width: 12px;
  height: 12px;
  position: absolute;
  z-index: 2;
  right: 1rem;
  top: 50%;
  transform: translate(0, -50%);
  background: url("../images/chevron-down-purple.svg") no-repeat;
  background-position: center;
  background-size: contain;
}
section.blog .content .wrapper .report {
  width: 100%;
}
section.blog .content .wrapper .no-posts {
  width: 100%;
}
section.blog .content .wrapper .entry-title {
  text-align: left;
  width: 100%;
  margin-top: 4rem;
  margin-bottom: 1rem;
}
section.blog .content .wrapper .blog-posts {
  width: 100%;
}
section.blog .content .wrapper .blog-posts .blog-post {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: stretch;
  margin: 6rem auto;
  width: 100%;
  position: relative;
  font-size: 1rem;
}
section.blog .content .wrapper .blog-posts .blog-post .image {
  width: 50%;
  height: auto;
  padding-right: 2rem;
}
section.blog .content .wrapper .blog-posts .blog-post .image a {
  display: block;
  font-size: 0;
  transition: 0.33s all;
  position: relative;
  overflow: hidden;
}
section.blog .content .wrapper .blog-posts .blog-post .image a img {
  width: 100%;
  height: auto;
  transition: 0.33s all;
  z-index: 1;
}
section.blog .content .wrapper .blog-posts .blog-post .image a:active {
  transform: scale(0.9);
}
section.blog .content .wrapper .blog-posts .blog-post .image a:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #eacc4a;
  width: 100%;
  height: 101%;
  opacity: 0;
  transition: 0.33s all;
  z-index: 2;
}
section.blog .content .wrapper .blog-posts .blog-post .image a:hover:after {
  opacity: 0.5;
}
section.blog .content .wrapper .blog-posts .blog-post .image a:hover img {
  -webkit-filter: brightness(2);
  filter: brightness(2);
}
section.blog .content .wrapper .blog-posts .blog-post .description {
  width: 50%;
  position: relative;
  display: flex;
  flex-grow: 1;
  flex-direction: column;
  justify-content: space-between;
  padding-left: 2rem;
}
section.blog .content .wrapper .blog-posts .blog-post .description .details .date {
  font-size: 0.85rem;
  color: #7E7474;
  margin-bottom: 0.5rem;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
}
section.blog .content .wrapper .blog-posts .blog-post .description .details a h2 {
  font-size: 32px;
  font-size: 2rem;
  line-height: 1.056;
  letter-spacing: -2px;
  color: #1d191a;
  margin-bottom: 2rem;
  transition: 0.33s all;
  text-align: left;
}
section.blog .content .wrapper .blog-posts .blog-post .description .details a:focus h2, section.blog .content .wrapper .blog-posts .blog-post .description .details a:hover h2 {
  color: #b8c950;
}
section.blog .content .wrapper .blog-posts .blog-post .description .details p {
  font-size: 1.125rem;
  line-height: 1.4;
}
section.blog .content .wrapper .blog-posts .blog-post .description .details .read-more {
  display: inline-block;
  margin-top: 1rem;
  margin-bottom: 1rem;
  color: #dd4d4d;
  position: relative;
  font-size: 1.125rem;
  text-decoration: none;
}
section.blog .content .wrapper .blog-posts .blog-post .description .details .read-more:hover {
  background-color: transparent;
}
section.blog .content .wrapper .blog-posts .blog-post .description .tags {
  width: 100%;
  display: flex;
  margin-top: 1rem;
}
section.blog .content .wrapper .blog-posts .blog-post .description .tags ul {
  display: flex;
}
section.blog .content .wrapper .blog-posts .blog-post .description .tags ul li a {
  margin-right: 0.5rem;
  padding: 0.65rem 1rem;
  border-radius: 50px;
  border: 1px solid #9b5376;
  color: #9b5376;
  font-size: 0.85rem;
  display: inline-block;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  transition: 0.33s all;
}
section.blog .content .wrapper .blog-posts .blog-post .description .tags ul li a:hover {
  color: #ffffff;
  background-color: #9b5376;
}
section.blog .content .wrapper .blog-posts .blog-post .description .tags ul li a:active {
  transform: scale(0.9);
}
section.blog .content .wrapper .blog-posts .blog-post .description .tags ul li:last-child a {
  margin-right: 0;
}
@media only screen and (max-width: 1024px) {
  section.blog .content .wrapper .blog-posts .blog-post .description {
    padding-left: 2rem;
  }
  section.blog .content .wrapper .blog-posts .blog-post .description .tags {
    margin-top: 2rem;
  }
}
@media only screen and (max-width: 768px) {
  section.blog .content .wrapper .blog-posts .blog-post .image {
    width: 100%;
    padding-right: 0;
    padding: 0 1rem 2rem;
  }
  section.blog .content .wrapper .blog-posts .blog-post .description {
    width: 100%;
    padding-left: 0;
    padding: 0 1rem;
  }
}
@media only screen and (max-width: 479px) {
  section.blog .content .wrapper .blog-posts .blog-post {
    margin: 3rem auto;
  }
  section.blog .content .wrapper .blog-posts .blog-post .image {
    padding: 0 0 1rem;
  }
  section.blog .content .wrapper .blog-posts .blog-post .description {
    padding: 0;
  }
  section.blog .content .wrapper .blog-posts .blog-post .description .details .date {
    margin-bottom: 0.5rem;
  }
  section.blog .content .wrapper .blog-posts .blog-post .description .details a h2 {
    font-size: 1.75rem;
    margin-bottom: 1.5rem;
  }
}
section.blog .content .wrapper .blog-posts .pagination {
  font-size: 1rem;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: 700;
  display: flex;
  justify-content: center;
}
section.blog .content .wrapper .blog-posts .pagination .current {
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #dd4d4d;
  border: 2px solid #dd4d4d;
  margin: 0.5rem;
}
section.blog .content .wrapper .blog-posts .pagination a {
  width: 52px;
  height: 52px;
  display: flex;
  text-align: center;
  justify-content: center;
  align-items: center;
  color: #ffffff;
  margin: 0.5rem;
  background-color: #dd4d4d;
  border: 2px solid #dd4d4d;
  transition: 0.33s all;
}
section.blog .content .wrapper .blog-posts .pagination a.next-page, section.blog .content .wrapper .blog-posts .pagination a.prev-page {
  font-size: 1.75rem;
}
section.blog .content .wrapper .blog-posts .pagination a:hover {
  background-color: #ffffff;
  color: #dd4d4d;
}
section.blog .content .wrapper .blog-posts .pagination a:active {
  transform: scale(0.9);
}
section.blog.search .content .wrapper .blog-posts .blog-post:first-child, section.blog.author .content .wrapper .blog-posts .blog-post:first-child, section.blog.category .content .wrapper .blog-posts .blog-post:first-child {
  margin-top: 3rem;
}
.password-protected {
  padding: 15rem 1rem 8rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.password-protected form {
  text-align: center;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
}
.password-protected form p {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 1rem;
}
.password-protected form p input[type=submit] {
  font-size: 1rem;
  background-color: #b8c950;
  border: 0;
  width: 240px;
  font-weight: 700;
  cursor: pointer;
  padding: 1rem;
  margin-top: 1rem;
  position: relative;
  transition: 0.33s all;
}

.blog-post article {
  max-width: 992px;
  margin: 0 auto;
}
.blog-post article .title {
  margin-top: 12rem;
  margin-bottom: 4rem;
  text-align: center;
}
.blog-post article .title h1 {
  font-size: 3.5rem;
  margin-bottom: 1.25rem;
}
.blog-post article .title h2, .blog-post article .title h3, .blog-post article .title h4, .blog-post article .title h5, .blog-post article .title h6 {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.167;
  letter-spacing: -1px;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 479px) {
  .blog-post article .title {
    margin-top: 5rem;
  }
  .blog-post article .title h1 {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 1279px) {
  .blog-post article .title {
    margin-bottom: 2rem;
  }
}
.blog-post article .hero-image {
  position: relative;
  display: flex;
  flex-direction: column;
}
.blog-post article .hero-image img {
  height: auto;
  margin-bottom: 1rem;
}
.blog-post article .hero-image span.caption {
  display: block;
  width: 100%;
  margin-bottom: 1rem;
  color: #7E7474;
  text-align: center;
}
.blog-post article .hero-image .social {
  position: absolute;
  top: -0.5rem;
  right: -4rem;
}
.blog-post article .hero-image .social .scriptlesssocialsharing {
  margin: 0 auto;
}
.blog-post article .hero-image .social .scriptlesssocialsharing .scriptlesssocialsharing__buttons {
  flex-direction: column;
}
.blog-post article .hero-image .social .scriptlesssocialsharing .scriptlesssocialsharing__buttons .button {
  background-color: transparent;
  color: #7E7474;
  border: 0;
  transition: 0.33s all;
}
.blog-post article .hero-image .social .scriptlesssocialsharing .scriptlesssocialsharing__buttons .button:hover {
  color: #dd4d4d;
}
.blog-post article .hero-image .social .scriptlesssocialsharing .scriptlesssocialsharing__buttons .button:active {
  transform: scale(0.8);
}
@media only screen and (max-width: 1279px) {
  .blog-post article .hero-image img {
    order: 2;
  }
  .blog-post article .hero-image .caption {
    order: 3;
  }
  .blog-post article .hero-image .social {
    order: 1;
    position: relative;
    top: 0;
    right: 0;
    max-width: 240px;
    margin: 0 auto;
    margin-bottom: 2rem;
  }
  .blog-post article .hero-image .social .scriptlesssocialsharing {
    margin: 0 auto;
  }
  .blog-post article .hero-image .social .scriptlesssocialsharing .scriptlesssocialsharing__buttons {
    flex-direction: row;
  }
}
.blog-post article .content {
  margin-top: 4rem;
}
.blog-post article .content > p {
  max-width: calc(796px + 2rem);
  margin: 0 auto;
  margin-bottom: 1rem;
  padding: 0 1rem;
}
.blog-post article .content > p b {
  font-weight: 700;
}
.blog-post article .content > p img {
  height: auto;
  width: 124.6%;
  transform: translate(calc(-12.3% + 1.5rem), 0);
  margin: 4rem auto;
}
@media only screen and (max-width: 1023px) {
  .blog-post article .content > p img {
    width: 100%;
    transform: none;
  }
}
.blog-post article .content > p img.emoji {
  transform: none !important;
}
.blog-post article .content .wp-caption {
  max-width: 100%;
}
.blog-post article .content .wp-caption img {
  width: 100%;
  height: auto;
}
.blog-post article .content .wp-caption-text {
  text-align: center;
  font-style: italic;
  padding-bottom: 1.5rem;
}
.blog-post article .content .wp-caption-text em {
  font-style: italic;
}
.blog-post article .content > div {
  margin: 0 auto;
}
.blog-post article .content blockquote {
  margin: 4rem 1rem;
}
.blog-post article .content blockquote p {
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: 700;
  font-size: 2.5rem;
  line-height: 1.2;
  text-align: center;
}
.blog-post article .content .tiktok-embed {
  margin: 4rem auto;
}
.blog-post article .content h2, .blog-post article .content h3, .blog-post article .content h4, .blog-post article .content h5, .blog-post article .content h6 {
  max-width: calc(796px + 2rem);
  margin: 0 auto;
  margin-top: 3rem;
  margin-bottom: 1rem;
  padding: 0 1rem;
}
.blog-post article .content .epyt-video-wrapper {
  margin-top: 4rem;
  padding-top: 56.25%;
  width: 100%;
  position: relative;
}
.blog-post article .content .epyt-video-wrapper iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.blog-post article .content .wp-video-shortcode video, .blog-post article .content video.wp-video-shortcode {
  height: auto;
}
.blog-post > .tags {
  max-width: calc(1200px + 2rem);
  margin: 0 auto;
  padding: 5rem 1rem;
  border-top: 1px solid #dcdcdc;
}
.blog-post > .tags h2, .blog-post > .tags h3, .blog-post > .tags h4, .blog-post > .tags h5 {
  font-size: 32px;
  font-size: 2rem;
  line-height: 1.056;
  letter-spacing: -2px;
  margin-bottom: 1rem;
}
.blog-post > .tags .list ul {
  display: flex;
}
.blog-post > .tags .list ul li a {
  margin-right: 0.5rem;
  padding: 0.65rem 1rem;
  border-radius: 50px;
  border: 1px solid #9b5376;
  color: #9b5376;
  font-size: 0.85rem;
  display: inline-block;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  transition: 0.33s all;
}
.blog-post > .tags .list ul li a:hover {
  color: #ffffff;
  background-color: #9b5376;
}
.blog-post > .tags .list ul li a:active {
  transform: scale(0.9);
}
.blog-post > .tags .list ul li:last-child a {
  margin-right: 0;
}
.blog-post > .related {
  padding: 6rem 0;
  background-color: #f3f3f3;
}
.blog-post > .related .wrapper {
  max-width: calc(1200px + 2rem);
  margin: 0 auto;
  padding: 0 1rem;
  display: flex;
  flex-wrap: wrap;
}
.blog-post > .related .wrapper h2, .blog-post > .related .wrapper h3, .blog-post > .related .wrapper h4, .blog-post > .related .wrapper h5 {
  font-size: 48px;
  font-size: 3rem;
  line-height: 1.071;
  letter-spacing: -3px;
  width: 100%;
  margin-bottom: 2rem;
}
.blog-post > .related .wrapper .post {
  width: calc(33.33% - 1rem);
  margin-right: 1.5rem;
}
.blog-post > .related .wrapper .post:last-child {
  margin-right: 0;
}
.blog-post > .related .wrapper .post a {
  color: #1d191a;
  transition: 0.33s all;
}
.blog-post > .related .wrapper .post a img {
  height: auto;
  margin-bottom: 1rem;
  transition: 0.33s all;
}
.blog-post > .related .wrapper .post a:active img {
  transform: scale(0.9);
}
.blog-post > .related .wrapper .post a h3 {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.167;
  letter-spacing: -1px;
  margin-bottom: 1rem;
}
.blog-post > .related .wrapper .post a:hover {
  color: #b8c950;
}
.blog-post > .related .wrapper .post .category {
  margin-bottom: 0.5rem;
}
.blog-post > .related .wrapper .post .category a {
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  color: #9b5376;
  font-size: 0.85rem;
  transition: 0.33s all;
}
.blog-post > .related .wrapper .post .category a:hover {
  color: #b8c950;
}
.blog-post > .related .wrapper .post .date {
  font-size: 0.85rem;
  color: #7E7474;
  margin-bottom: 2rem;
  font-family: "GT Walsheim Pro", "Arial", sans-serif;
}
@media only screen and (max-width: 768px) {
  .blog-post > .related .wrapper .post {
    width: calc(50% - 0.5rem);
    margin-right: 0;
    margin-bottom: 2rem;
  }
  .blog-post > .related .wrapper .post:last-child {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 479px) {
  .blog-post > .related .wrapper .post {
    width: 100%;
  }
}
@media only screen and (max-width: 768px) {
  .blog-post > .related .wrapper {
    justify-content: space-between;
  }
}

section.five_tiles {
  padding: 10rem 2rem;
  text-align: center;
  width: 100%;
  background-color: #ffffff;
  margin: 0 auto;
}
section.five_tiles > h1, section.five_tiles > h2, section.five_tiles > h3, section.five_tiles > h4, section.five_tiles > h5, section.five_tiles > h6 {
  margin-bottom: 2rem;
}
section.five_tiles > .description {
  max-width: 800px;
  margin: 0 auto;
  margin-bottom: 2rem;
}
section.five_tiles > a.cta {
  font-size: 1.25rem;
  padding-right: 24px;
  position: relative;
  display: inline-block;
}
section.five_tiles > a.cta .arrow {
  position: absolute;
  right: 0;
  height: 100%;
  width: 16px;
  top: 0;
  overflow: hidden;
}
section.five_tiles > a.cta .arrow svg {
  width: 12px;
  height: 12px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  transition: 0.33s all;
}
section.five_tiles > a.cta .arrow svg:nth-child(2) {
  transform: translate(0, 250%);
}
section.five_tiles > a.cta:hover .arrow svg:nth-child(1) {
  transform: translate(0, -300%);
}
section.five_tiles > a.cta:hover .arrow svg:nth-child(2) {
  transform: translate(0, -50%);
}
@media only screen and (max-width: 767px) {
  section.five_tiles {
    padding: 4rem 2rem;
  }
  section.five_tiles > h2 {
    font-size: 2.25rem;
    margin-bottom: 1.5rem;
  }
}
section.five_tiles .tiles {
  margin: 0 auto;
  margin-top: 6.25rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 1200px;
}
section.five_tiles .tiles .tile {
  width: calc(20% - 0.4rem);
  position: relative;
  margin-bottom: 1rem;
  border-bottom: 0;
  overflow: hidden;
  transition: 0.33s all;
}
section.five_tiles .tiles .tile h1, section.five_tiles .tiles .tile h2, section.five_tiles .tiles .tile h3, section.five_tiles .tiles .tile h4, section.five_tiles .tiles .tile h5, section.five_tiles .tiles .tile h6 {
  position: absolute;
  bottom: 1rem;
  left: 1rem;
  color: #ffffff;
  transition: 0.33s all;
  z-index: 3;
  font-size: 2.8481vw;
  letter-spacing: -2px;
}
section.five_tiles .tiles .tile h1 svg, section.five_tiles .tiles .tile h2 svg, section.five_tiles .tiles .tile h3 svg, section.five_tiles .tiles .tile h4 svg, section.five_tiles .tiles .tile h5 svg, section.five_tiles .tiles .tile h6 svg {
  display: none;
}
@media only screen and (min-width: 1264px) {
  section.five_tiles .tiles .tile h1, section.five_tiles .tiles .tile h2, section.five_tiles .tiles .tile h3, section.five_tiles .tiles .tile h4, section.five_tiles .tiles .tile h5, section.five_tiles .tiles .tile h6 {
    font-size: 2.25rem;
  }
}
section.five_tiles .tiles .tile img {
  width: 100%;
  transition: 0.33s all;
  z-index: 0;
}
section.five_tiles .tiles .tile img.mobile {
  display: none;
}
section.five_tiles .tiles .tile .cta {
  font-size: 1.25rem;
  position: absolute;
  bottom: 1.5rem;
  left: 1rem;
  opacity: 0;
  color: #ffffff;
  transition: 0.33s all;
  border-bottom: 1px dashed;
  padding-right: 18px;
  z-index: 2;
  font-size: 1.58227vw;
}
section.five_tiles .tiles .tile .cta svg {
  position: absolute;
  right: 0;
  top: 50%;
  width: 12px;
  height: 12px;
  transform: translate(0, -50%);
}
@media only screen and (min-width: 1264px) {
  section.five_tiles .tiles .tile .cta {
    font-size: 1.25rem;
  }
}
section.five_tiles .tiles .tile .overlay {
  position: absolute;
  z-index: 1;
  background-color: #1d191a;
  opacity: 0;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: 0.33s all;
}
section.five_tiles .tiles .tile:hover h1, section.five_tiles .tiles .tile:hover h2, section.five_tiles .tiles .tile:hover h3, section.five_tiles .tiles .tile:hover h4, section.five_tiles .tiles .tile:hover h5, section.five_tiles .tiles .tile:hover h6, section.five_tiles .tiles .tile:focus h1, section.five_tiles .tiles .tile:focus h2, section.five_tiles .tiles .tile:focus h3, section.five_tiles .tiles .tile:focus h4, section.five_tiles .tiles .tile:focus h5, section.five_tiles .tiles .tile:focus h6 {
  bottom: 4.5vw;
}
@media only screen and (min-width: 1264px) {
  section.five_tiles .tiles .tile:hover h1, section.five_tiles .tiles .tile:hover h2, section.five_tiles .tiles .tile:hover h3, section.five_tiles .tiles .tile:hover h4, section.five_tiles .tiles .tile:hover h5, section.five_tiles .tiles .tile:hover h6, section.five_tiles .tiles .tile:focus h1, section.five_tiles .tiles .tile:focus h2, section.five_tiles .tiles .tile:focus h3, section.five_tiles .tiles .tile:focus h4, section.five_tiles .tiles .tile:focus h5, section.five_tiles .tiles .tile:focus h6 {
    bottom: 15%;
  }
}
section.five_tiles .tiles .tile:hover .cta, section.five_tiles .tiles .tile:focus .cta {
  opacity: 1;
  bottom: 1.5rem;
}
@media only screen and (max-width: 768px) {
  section.five_tiles .tiles .tile:hover .cta, section.five_tiles .tiles .tile:focus .cta {
    bottom: 1rem;
  }
}
section.five_tiles .tiles .tile:hover .overlay, section.five_tiles .tiles .tile:focus .overlay {
  opacity: 0.08;
}
section.five_tiles .tiles .tile:hover img, section.five_tiles .tiles .tile:focus img {
  transform: scale(1.2);
}
section.five_tiles .tiles .tile:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.five_tiles .tiles .tile:active .overlay {
  opacity: 0.16;
}
section.five_tiles .tiles .tile.less_zoom:hover img, section.five_tiles .tiles .tile.less_zoom:focus img {
  transform: scale(1.1);
}
@media only screen and (max-width: 639px) {
  section.five_tiles .tiles {
    margin-top: 3rem;
  }
  section.five_tiles .tiles .tile {
    width: 100%;
  }
  section.five_tiles .tiles .tile h1, section.five_tiles .tiles .tile h2, section.five_tiles .tiles .tile h3, section.five_tiles .tiles .tile h4, section.five_tiles .tiles .tile h5, section.five_tiles .tiles .tile h6 {
    font-size: 2rem;
    letter-spacing: -2px;
  }
  section.five_tiles .tiles .tile h1 svg, section.five_tiles .tiles .tile h2 svg, section.five_tiles .tiles .tile h3 svg, section.five_tiles .tiles .tile h4 svg, section.five_tiles .tiles .tile h5 svg, section.five_tiles .tiles .tile h6 svg {
    display: inline-block;
    width: 8px;
    margin-left: 1rem;
    margin-bottom: 0.25rem;
  }
  section.five_tiles .tiles .tile img.desktop {
    display: none;
  }
  section.five_tiles .tiles .tile img.mobile {
    display: block;
  }
  section.five_tiles .tiles .tile:hover h1, section.five_tiles .tiles .tile:hover h2, section.five_tiles .tiles .tile:hover h3, section.five_tiles .tiles .tile:hover h4, section.five_tiles .tiles .tile:hover h5, section.five_tiles .tiles .tile:hover h6 {
    bottom: 1rem;
  }
  section.five_tiles .tiles .tile:hover .cta {
    display: none;
  }
  section.five_tiles .tiles .tile:focus h1, section.five_tiles .tiles .tile:focus h2, section.five_tiles .tiles .tile:focus h3, section.five_tiles .tiles .tile:focus h4, section.five_tiles .tiles .tile:focus h5, section.five_tiles .tiles .tile:focus h6 {
    bottom: 1rem;
  }
  section.five_tiles .tiles .tile:focus .cta {
    display: none;
  }
  section.five_tiles .tiles .tile .cta {
    font-size: 1rem;
  }
}

section.five_tiles_carousel {
  padding: 10rem 50px;
  text-align: center;
  width: 100%;
  background-color: #ffffff;
  margin: 0 auto;
}
section.five_tiles_carousel > h1, section.five_tiles_carousel > h2, section.five_tiles_carousel > h3, section.five_tiles_carousel > h4, section.five_tiles_carousel > h5, section.five_tiles_carousel > h6 {
  margin-bottom: 2rem;
}
section.five_tiles_carousel > .description {
  max-width: 800px;
  margin: 0 auto;
  margin-bottom: 2rem;
}
section.five_tiles_carousel > a.cta {
  font-size: 1.25rem;
  padding-right: 24px;
  position: relative;
  display: inline-block;
}
section.five_tiles_carousel > a.cta .arrow {
  position: absolute;
  right: 0;
  height: 100%;
  width: 16px;
  top: 0;
  overflow: hidden;
}
section.five_tiles_carousel > a.cta .arrow svg {
  width: 12px;
  height: 12px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  transition: 0.33s all;
}
section.five_tiles_carousel > a.cta .arrow svg:nth-child(2) {
  transform: translate(0, 250%);
}
section.five_tiles_carousel > a.cta:hover .arrow svg:nth-child(1) {
  transform: translate(0, -300%);
}
section.five_tiles_carousel > a.cta:hover .arrow svg:nth-child(2) {
  transform: translate(0, -50%);
}
@media only screen and (max-width: 767px) {
  section.five_tiles_carousel {
    padding: 4rem 2rem;
  }
  section.five_tiles_carousel > h2 {
    font-size: 2.25rem;
    margin-bottom: 1.5rem;
  }
}
section.five_tiles_carousel .glide-five_tiles {
  max-width: 1210px;
  margin: 0 auto;
}
section.five_tiles_carousel .slick-prev:before, section.five_tiles_carousel .slick-next:before {
  content: "";
  background-image: url("../images/right-chevron-black.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  display: block;
  width: 100%;
  height: 100%;
}
section.five_tiles_carousel .slick-prev:before {
  transform: rotate(180deg);
}
section.five_tiles_carousel .slick-slide {
  margin: 0.5rem;
  overflow: hidden;
}
section.five_tiles_carousel .slick-dots li {
  margin: 0;
}
section.five_tiles_carousel .slick-dots li button {
  padding: 0;
}
section.five_tiles_carousel .slick-dots li button:before {
  font-size: 2rem;
  color: #f3f3f3;
  opacity: 1;
}
section.five_tiles_carousel .slick-dots li.slick-active button:before {
  color: #dd4d4d;
}
section.five_tiles_carousel .tile img {
  transition: 0.33s;
}
section.five_tiles_carousel .tile .mobile {
  display: none;
}
section.five_tiles_carousel .tile:hover h1, section.five_tiles_carousel .tile:hover h2, section.five_tiles_carousel .tile:hover h3, section.five_tiles_carousel .tile:hover h4, section.five_tiles_carousel .tile:hover h5, section.five_tiles_carousel .tile:hover h6, section.five_tiles_carousel .tile:focus h1, section.five_tiles_carousel .tile:focus h2, section.five_tiles_carousel .tile:focus h3, section.five_tiles_carousel .tile:focus h4, section.five_tiles_carousel .tile:focus h5, section.five_tiles_carousel .tile:focus h6 {
  bottom: 4.5vw;
}
@media only screen and (min-width: 1264px) {
  section.five_tiles_carousel .tile:hover h1, section.five_tiles_carousel .tile:hover h2, section.five_tiles_carousel .tile:hover h3, section.five_tiles_carousel .tile:hover h4, section.five_tiles_carousel .tile:hover h5, section.five_tiles_carousel .tile:hover h6, section.five_tiles_carousel .tile:focus h1, section.five_tiles_carousel .tile:focus h2, section.five_tiles_carousel .tile:focus h3, section.five_tiles_carousel .tile:focus h4, section.five_tiles_carousel .tile:focus h5, section.five_tiles_carousel .tile:focus h6 {
    bottom: 15%;
  }
}
section.five_tiles_carousel .tile:hover .cta, section.five_tiles_carousel .tile:focus .cta {
  opacity: 1;
  bottom: 1.5rem;
}
@media only screen and (max-width: 768px) {
  section.five_tiles_carousel .tile:hover .cta, section.five_tiles_carousel .tile:focus .cta {
    bottom: 1rem;
  }
}
section.five_tiles_carousel .tile:hover .overlay, section.five_tiles_carousel .tile:focus .overlay {
  opacity: 0.08;
}
section.five_tiles_carousel .tile:hover img, section.five_tiles_carousel .tile:focus img {
  transform: scale(1.2);
}
section.five_tiles_carousel .tile:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.five_tiles_carousel .tile:active .overlay {
  opacity: 0.16;
}
section.five_tiles_carousel .tile.less_zoom:hover img, section.five_tiles_carousel .tile.less_zoom:focus img {
  transform: scale(1.1);
}

section.six_tiles {
  padding: 10rem 2rem;
  text-align: center;
  width: 100%;
  background-color: #ffffff;
  margin: 0 auto;
}
section.six_tiles > h2 {
  margin-bottom: 2rem;
}
section.six_tiles > p {
  max-width: 800px;
  margin: 0 auto;
  margin-bottom: 2rem;
}
section.six_tiles > a.cta {
  font-size: 1.25rem;
  padding-right: 24px;
  position: relative;
  display: inline-block;
}
section.six_tiles > a.cta .arrow {
  position: absolute;
  right: 0;
  height: 100%;
  width: 16px;
  top: 0;
  overflow: hidden;
}
section.six_tiles > a.cta .arrow svg {
  width: 12px;
  height: 12px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  transition: 0.33s all;
}
section.six_tiles > a.cta .arrow svg:nth-child(2) {
  transform: translate(0, 250%);
}
section.six_tiles > a.cta:hover .arrow svg:nth-child(1) {
  transform: translate(0, -300%);
}
section.six_tiles > a.cta:hover .arrow svg:nth-child(2) {
  transform: translate(0, -50%);
}
@media only screen and (max-width: 767px) {
  section.six_tiles {
    padding: 4rem 2rem;
  }
  section.six_tiles > h2 {
    font-size: 2.25rem;
    margin-bottom: 1.5rem;
  }
}
section.six_tiles .tiles {
  margin: 0 auto;
  margin-top: 6.25rem;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  column-gap: 1rem;
  max-width: 1200px;
}
section.six_tiles .tiles .tile {
  position: relative;
  margin-bottom: 1rem;
  border-bottom: 0;
  overflow: hidden;
  transition: 0.33s all;
}
section.six_tiles .tiles .tile h3 {
  position: absolute;
  bottom: 1rem;
  left: 1rem;
  color: #ffffff;
  transition: 0.33s all;
  z-index: 3;
  font-size: 2.215vw;
  letter-spacing: -2px;
}
section.six_tiles .tiles .tile h3 svg {
  display: none;
}
@media only screen and (min-width: 1264px) {
  section.six_tiles .tiles .tile h3 {
    font-size: 1.75rem;
  }
}
section.six_tiles .tiles .tile img {
  width: 100%;
  transition: 0.33s all;
  z-index: 0;
}
section.six_tiles .tiles .tile img.mobile {
  display: none;
}
section.six_tiles .tiles .tile .cta {
  font-size: 1.25rem;
  position: absolute;
  bottom: 1.5rem;
  left: 1rem;
  opacity: 0;
  color: #ffffff;
  transition: 0.33s all;
  border-bottom: 1px dashed;
  padding-right: 18px;
  z-index: 2;
  font-size: 1.58227vw;
}
section.six_tiles .tiles .tile .cta svg {
  position: absolute;
  right: 0;
  top: 50%;
  width: 12px;
  height: 12px;
  transform: translate(0, -50%);
}
@media only screen and (min-width: 1264px) {
  section.six_tiles .tiles .tile .cta {
    font-size: 1.25rem;
  }
}
section.six_tiles .tiles .tile .overlay {
  position: absolute;
  z-index: 1;
  background-color: #1d191a;
  opacity: 0;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: 0.33s all;
}
section.six_tiles .tiles .tile:hover h3, section.six_tiles .tiles .tile:focus h3 {
  bottom: 4.5vw;
}
@media only screen and (min-width: 1264px) {
  section.six_tiles .tiles .tile:hover h3, section.six_tiles .tiles .tile:focus h3 {
    bottom: 20%;
  }
}
section.six_tiles .tiles .tile:hover .cta, section.six_tiles .tiles .tile:focus .cta {
  opacity: 1;
  bottom: 1.5rem;
}
@media only screen and (max-width: 768px) {
  section.six_tiles .tiles .tile:hover .cta, section.six_tiles .tiles .tile:focus .cta {
    bottom: 1rem;
  }
}
section.six_tiles .tiles .tile:hover .overlay, section.six_tiles .tiles .tile:focus .overlay {
  opacity: 0.08;
}
section.six_tiles .tiles .tile:hover img, section.six_tiles .tiles .tile:focus img {
  transform: scale(1.2);
}
section.six_tiles .tiles .tile:focus {
  box-shadow: 0px 0px 3px 3px #8cd0e8;
  outline: none;
}
section.six_tiles .tiles .tile:active .overlay {
  opacity: 0.16;
}
@media only screen and (max-width: 1023px) {
  section.six_tiles .tiles {
    grid-template-columns: repeat(3, 1fr);
  }
  section.six_tiles .tiles .tile h3 {
    font-size: 3.5vw;
  }
}
@media only screen and (max-width: 639px) {
  section.six_tiles .tiles {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 479px) {
  section.six_tiles .tiles {
    grid-template-columns: repeat(1, 1fr);
  }
}
@media only screen and (max-width: 639px) {
  section.six_tiles .tiles {
    margin-top: 3rem;
  }
  section.six_tiles .tiles .tile {
    width: 100%;
  }
  section.six_tiles .tiles .tile h3 {
    font-size: 2rem;
    letter-spacing: -2px;
  }
  section.six_tiles .tiles .tile h3 svg {
    display: inline-block;
    width: 8px;
    margin-left: 1rem;
    margin-bottom: 0.25rem;
  }
  section.six_tiles .tiles .tile img.desktop {
    display: none;
  }
  section.six_tiles .tiles .tile img.mobile {
    display: block;
  }
  section.six_tiles .tiles .tile:hover h3 {
    bottom: 1rem;
  }
  section.six_tiles .tiles .tile:hover .cta {
    display: none;
  }
  section.six_tiles .tiles .tile:focus h3 {
    bottom: 1rem;
  }
  section.six_tiles .tiles .tile:focus .cta {
    display: none;
  }
  section.six_tiles .tiles .tile .cta {
    font-size: 1rem;
  }
}

section.full-width_tiles {
  padding: 10rem 1rem;
  text-align: center;
  margin: 0 auto;
  background-color: #f3f3f3;
}
section.full-width_tiles > h2 {
  margin-bottom: 1rem;
}
section.full-width_tiles > .description {
  max-width: 80%;
  margin: 0 auto;
  margin-bottom: 1rem;
}
section.full-width_tiles a.cta {
  font-size: 1.5rem;
}
section.full-width_tiles .tiles {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: calc(100% - 4rem);
  margin: 0 auto;
  margin-top: 5rem;
}
section.full-width_tiles .tiles .tile {
  display: flex;
  width: 100%;
  position: relative;
  margin-bottom: 2rem;
  background-color: #1d191a;
  min-height: 600px;
}
section.full-width_tiles .tiles .tile .copy {
  width: 50%;
}
section.full-width_tiles .tiles .tile .copy h4 {
  font-size: 4rem;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 10%;
  width: 40%;
  color: #ffffff;
  text-align: left;
  transition: 0.33s all;
}
section.full-width_tiles .tiles .tile .copy .cta {
  font-size: 1.5rem;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 10%;
  opacity: 0;
  color: #ffffff;
  transition: 0.33s all;
}
section.full-width_tiles .tiles .tile .image {
  width: 50%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
section.full-width_tiles .tiles .tile .image img {
  width: 100%;
}
section.full-width_tiles .tiles .tile:hover .copy h4 {
  transform: translate(0, -100%);
}
section.full-width_tiles .tiles .tile:hover .copy .cta {
  opacity: 1;
  top: 50%;
  transform: translate(0, 100%);
}

section.full_width_wysiwyg {
  padding: 4rem 2rem;
  overflow: hidden;
  position: relative;
}
section.full_width_wysiwyg .copy {
  width: 60%;
  max-width: 960px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
section.full_width_wysiwyg .copy h2 {
  margin-bottom: 1rem;
}
section.full_width_wysiwyg .copy h2 span {
  display: inline-block;
}
section.full_width_wysiwyg .copy p:not(:empty) {
  margin-bottom: 1rem;
}
section.full_width_wysiwyg .background-shape {
  position: absolute;
  width: auto;
  max-height: 100%;
  top: 0;
  z-index: 1;
}
section.full_width_wysiwyg .background {
  width: 100%;
  position: absolute !important;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 0;
}
@media only screen and (max-width: 639px) {
  section.full_width_wysiwyg .copy {
    width: 100%;
  }
  section.full_width_wysiwyg .copy h2 {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 419px) {
  section.full_width_wysiwyg .copy h2 {
    font-size: 2rem;
  }
}

.page-id-132 {
  background: #f3f3f3;
}

#content {
  overflow: hidden;
}

/*# sourceMappingURL=main.css.map */
