/* - - - - - - - - - - - - - - - - - -

NOMINT

Designed + developed by Mike at Slate
https://slateapp.com/studio

// - - - - - - - - - - - - - - - - - - */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, hr, a, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strong, sub, sup, tt, var, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

strong, b, mark {
  font-weight: 700;
  font-style: inherit;
}

em, i, cite, q, address, dfn, var {
  font-style: italic;
  font-weight: inherit;
}

abbr[title], dfn[title] {
  cursor: help;
  border-bottom: 1px dotted;
}

ins {
  border-bottom: 1px solid;
}

a, u, ins {
  text-decoration: none;
}

del, s {
  text-decoration: line-through;
}

pre, code, samp, kbd {
  font-family: monospace;
}

small {
  font-size: 0.75em;
}

img {
  border: 0;
  font-style: italic;
}

input, select, option, optgroup, textarea {
  font: inherit;
}

* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
  display: block;
}

audio[controls], canvas, video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

html {
  font-size: 100%;
  -webkit-overflow-scrolling: touch;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body {
  margin: 0;
  text-rendering: optimizeLegibility;
}

img {
  border: 0;
  -ms-interpolation-mode: bicubic;
  display: block;
}

img, object, embed {
  max-width: 100%;
  height: auto;
}

input {
  -webkit-appearance: none;
}

.owl-carousel {
  visibility: hidden;
  opacity: 0;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.owl-carousel .owl-stage {
  position: relative;
  -ms-touch-action: pan-Y;
  -moz-backface-visibility: hidden;
  /* fix firefox animation glitch */
}

.owl-carousel .owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  /* fix for flashing background */
  -webkit-transform: translate3d(0px, 0px, 0px);
}

.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
}

.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.owl-carousel .owl-item img {
  display: block;
  width: 100%;
}

.owl-carousel .owl-nav.disabled,
.owl-carousel .owl-dots.disabled {
  display: none;
}

.owl-carousel .owl-nav .owl-prev,
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-dot {
  cursor: pointer;
  cursor: hand;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.owl-carousel.owl-loaded {
  opacity: 1;
  visibility: visible;
}

.owl-carousel.owl-loading {
  opacity: 0;
  display: block;
}

.owl-carousel.owl-hidden {
  opacity: 0;
}

.owl-carousel.owl-refresh .owl-item {
  visibility: hidden;
}

.owl-carousel.owl-drag .owl-item {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.owl-carousel.owl-grab {
  cursor: move;
  cursor: grab;
}

.owl-carousel.owl-rtl {
  direction: rtl;
}

.owl-carousel.owl-rtl .owl-item {
  float: right;
}

/* No Js */
.no-js .owl-carousel {
  display: block;
}

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration: 800ms;
  animation-fill-mode: both;
}

.owl-carousel .owl-animated-in {
  z-index: 0;
}

.owl-carousel .owl-animated-out {
  z-index: 1;
}

.owl-carousel .fadeOut {
  animation-name: fadeOut;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/*
 *  Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out;
}

/*
 *  Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity 400ms ease;
}

.owl-carousel .owl-item img.owl-lazy {
  transform-style: preserve-3d;
}

/*
 *  Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000;
}

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: transform 100ms ease;
}

.owl-carousel .owl-video-play-icon:hover {
  -ms-transform: scale(1.3, 1.3);
  transform: scale(1.3, 1.3);
}

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none;
}

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease;
}

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%;
}

@font-face {
  font-family: "ABC Maxi Round";
  src: url("https://s3-us-west-1.amazonaws.com/media-us-westslateappcom/nomint/production/clips/28b66024-f793-49fd-8d8a-899e22f2d2ee/abcmaxiround-regular.woff2") format("woff2");
}
body {
  font-family: "Inter", sans-serif;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  color: #4b4b59;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-weight: 300;
  color: #1b2026;
}
h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong,
.h1 strong, .h2 strong, .h3 strong, .h4 strong, .h5 strong, .h6 strong {
  font-weight: 400;
}
h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child,
.h1:first-child, .h2:first-child, .h3:first-child, .h4:first-child, .h5:first-child, .h6:first-child {
  margin-top: 0;
}

h1, .h1 {
  font-size: 19px;
  line-height: 1.7;
  letter-spacing: -0.01em;
}
@media only screen and (min-width: 768px) {
  h1, .h1 {
    font-size: 26px;
  }
}
@media only screen and (min-width: 1280px) {
  h1, .h1 {
    font-size: 35px;
  }
}

h2, .h2 {
  font-size: 20px;
  line-height: 1.25;
  letter-spacing: -0.01em;
}
@media only screen and (min-width: 768px) {
  h2, .h2 {
    font-size: 23px;
  }
}
@media only screen and (min-width: 1280px) {
  h2, .h2 {
    font-size: 26px;
  }
}

h3, .h3 {
  font-size: 22px;
  line-height: 1.25;
  letter-spacing: 0.01em;
}

h4, .h4 {
  letter-spacing: -0.01em;
}

p, ul, ol {
  margin-top: 16px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  p, ul, ol {
    margin-top: 16px;
    font-size: 17px;
  }
}
@media only screen and (min-width: 1280px) {
  p, ul, ol {
    margin-top: 20px;
    font-size: 18px;
  }
}
p strong, ul strong, ol strong {
  font-weight: 400;
}
p:first-child, ul:first-child, ol:first-child {
  margin-top: 0;
}

ul, ol {
  list-style-position: inside;
}

blockquote {
  font-size: 20px;
  line-height: 1.75;
  letter-spacing: -0.01em;
}
@media only screen and (min-width: 768px) {
  blockquote {
    font-size: 23px;
  }
}
@media only screen and (min-width: 1280px) {
  blockquote {
    font-size: 26px;
  }
}
blockquote strong {
  font-weight: 400;
}

a {
  text-decoration: none;
  color: #1b2026;
  -webkit-transition: color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  transition: color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
}
a:hover {
  color: #e93c4c;
}

hr {
  margin: 32px 0;
  border: 0;
  height: 3px;
  background: #f5f5f7;
}
@media only screen and (min-width: 768px) {
  hr {
    margin: 42px 0;
  }
}
@media only screen and (min-width: 1280px) {
  hr {
    margin: 52px 0;
  }
}

::selection {
  background: #e93c4c;
  color: #fff;
}

::-moz-selection {
  background: #e93c4c;
  color: #fff;
}

.button {
  position: relative;
  display: inline-block;
  padding: 15px 18px;
  background: #2049e7;
  border: none;
  border-radius: 8px;
  font-weight: 300;
  font-family: "Inter", sans-serif;
  font-size: 16px;
  line-height: 1;
  color: #fff;
  -webkit-transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  cursor: pointer;
  -webkit-backface-visibility: hidden;
}
.button svg {
  vertical-align: bottom;
  height: 16px;
  fill: #fff;
}
.button svg:first-child {
  margin-right: 12px;
}
.button svg:last-child {
  margin-left: 12px;
}
.button:hover {
  background: #010209;
  color: #fff;
}
.button:focus {
  outline: none;
}
.button--small {
  padding: 10px 16px;
  font-size: 12px;
}
.button--small svg {
  vertical-align: bottom;
  height: 12px;
}
.button--small.button--split:hover:before {
  -moz-transform: translate(-3px, 0);
  -o-transform: translate(-3px, 0);
  -ms-transform: translate(-3px, 0);
  -webkit-transform: translate(-3px, 0);
  transform: translate(-3px, 0);
}
.button--small.button--split:hover:after {
  -moz-transform: translate(3px, 0);
  -o-transform: translate(3px, 0);
  -ms-transform: translate(3px, 0);
  -webkit-transform: translate(3px, 0);
  transform: translate(3px, 0);
}
.button--split {
  background: transparent;
}
.button--split span {
  position: relative;
  z-index: 1;
}
.button--split:before, .button--split:after {
  content: "";
  position: absolute;
  z-index: 0;
  left: 0;
  right: 0;
  background: #e93c4c;
  -webkit-transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
}
.button--split:before {
  top: 0;
  bottom: 50%;
}
.button--split:after {
  top: 50%;
  bottom: 0;
}
.button--split:hover {
  background: transparent;
}
.button--split:hover:before {
  -moz-transform: translate(-4px, 0);
  -o-transform: translate(-4px, 0);
  -ms-transform: translate(-4px, 0);
  -webkit-transform: translate(-4px, 0);
  transform: translate(-4px, 0);
}
.button--split:hover:after {
  -moz-transform: translate(4px, 0);
  -o-transform: translate(4px, 0);
  -ms-transform: translate(4px, 0);
  -webkit-transform: translate(4px, 0);
  transform: translate(4px, 0);
}

body {
  background: #fff;
}

html {
  overflow-x: hidden;
}

body, header, footer, section, .page {
  position: relative;
  float: left;
  clear: both;
  width: 100%;
}

.page {
  overflow: hidden;
}

.wrap {
  position: relative;
  margin: 0 auto;
  max-width: 480px;
  padding: 0 16px;
}
@media only screen and (min-width: 768px) {
  .wrap {
    max-width: 768px;
    padding: 0 20px;
  }
}
@media only screen and (min-width: 1024px) {
  .wrap {
    max-width: 1024px;
  }
}
@media only screen and (min-width: 1280px) {
  .wrap {
    max-width: 1280px;
  }
}
.wrap:after {
  content: "";
  clear: both;
  display: table;
}

.wrap--row {
  padding: 0 8px;
}
@media only screen and (min-width: 768px) {
  .wrap--row {
    padding: 0 4px;
  }
}
.wrap--row:after {
  content: "";
  clear: both;
  display: table;
}

.column {
  float: left;
  width: 100%;
  padding: 0 8px;
}
@media only screen and (min-width: 768px) {
  .column {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 768px) {
  .column--2 {
    width: 50%;
  }
}
@media only screen and (min-width: 768px) {
  .column--3 {
    width: 50%;
  }
}
@media only screen and (min-width: 1024px) {
  .column--3 {
    width: 33.33%;
  }
}
.column--4 {
  width: 50%;
}
@media only screen and (min-width: 768px) {
  .column--4 {
    width: 33.33%;
  }
}
@media only screen and (min-width: 1024px) {
  .column--4 {
    width: 25%;
  }
}

.header {
  position: sticky;
  z-index: 10;
  margin-top: 4px;
  top: 0;
}
@media only screen and (min-width: 768px) {
  .header {
    margin-top: 26px;
  }
}
.header--stuck .header__bg {
  opacity: 1;
}

.header-ghost {
  position: absolute;
  z-index: -1;
  margin-top: 4px;
  top: 0;
  visibility: hidden;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .header-ghost {
    margin-top: 26px;
  }
}

.header__bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #fff;
  box-shadow: 0 5px 30px rgba(1, 2, 9, 0.1);
  opacity: 0;
  -webkit-transition: opacity 0.3s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: opacity 0.3s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: opacity 0.3s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: opacity 0.3s cubic-bezier(0.2, 0.3, 0, 1);
  transition: opacity 0.3s cubic-bezier(0.2, 0.3, 0, 1);
}

.logo {
  float: left;
  padding: 13px 0;
}
.logo svg {
  display: block;
  height: 24px;
  fill: #aeafbd;
  -webkit-transition: fill 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: fill 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: fill 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: fill 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  transition: fill 0.2s cubic-bezier(0.2, 0.3, 0, 1);
}
.logo:hover svg {
  fill: #1b2026;
}

.menu-toggle {
  position: absolute;
  z-index: 20;
  top: 0;
  right: 0;
  padding: 16px 20px;
  cursor: pointer;
}
@media only screen and (min-width: 768px) {
  .menu-toggle {
    display: none;
  }
}

.menu-toggle-hamburger {
  float: right;
  position: relative;
  width: 26px;
  height: 18px;
  cursor: pointer;
}
.menu-toggle-hamburger span, .menu-toggle-hamburger span:before, .menu-toggle-hamburger span:after {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  width: 26px;
  height: 2px;
  border-radius: 2px;
  -webkit-transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  background: #1b2026;
}
.menu-toggle-hamburger span:before {
  top: -8px;
  width: 20px;
}
.menu-toggle-hamburger span:after {
  top: 8px;
  width: 20px;
  left: 6px;
}

.menu-wrap {
  display: none;
}
@media only screen and (min-width: 768px) {
  .menu-wrap {
    display: block;
    position: relative;
    float: right;
    margin-right: -20px;
  }
}

.mobile-menu-wrap {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.95);
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 80px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
@media only screen and (min-width: 768px) {
  .mobile-menu-wrap {
    display: none;
  }
}
.mobile-menu-wrap .menu li {
  float: none;
}
.mobile-menu-wrap .menu li a {
  -moz-transform: translate(0, 32px);
  -o-transform: translate(0, 32px);
  -ms-transform: translate(0, 32px);
  -webkit-transform: translate(0, 32px);
  transform: translate(0, 32px);
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
}

.menu {
  list-style: none;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
}
@media only screen and (min-width: 768px) {
  .menu {
    opacity: 1;
    visibility: visible;
    -moz-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    -o-transition: none;
    transition: none;
  }
}
.menu li {
  position: relative;
  display: block;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .menu li {
    float: left;
  }
}
.menu li a, .menu li span {
  position: relative;
  display: block;
  padding: 18px 20px;
  font-size: 30px;
  line-height: 1;
  font-weight: 300;
  letter-spacing: 0.01em;
  color: #4b4b59;
  cursor: pointer;
}
@media only screen and (min-width: 768px) {
  .menu li a, .menu li span {
    font-size: 14px;
    color: #4b4b59;
  }
  .menu li a:hover:not(span), .menu li span:hover:not(span) {
    color: #2049e7;
  }
}
.menu li a.active, .menu li span.active {
  color: #2049e7;
}
@media only screen and (min-width: 768px) {
  .menu li a.active, .menu li span.active {
    color: #1b2026;
  }
  .menu li a.active:after, .menu li span.active:after {
    content: "";
    position: absolute;
    bottom: 10px;
    left: 50%;
    margin-left: -10px;
    height: 3px;
    width: 20px;
    background: #2049e7;
  }
}
.menu li ul {
  position: absolute;
  top: 100%;
  left: 0;
  margin: 0;
  background: white;
  box-shadow: 0 5px 30px rgba(1, 2, 9, 0.1);
  border-radius: 8px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  -webkit-transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
}
.menu li ul:after {
  bottom: 100%;
  left: 40px;
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(255, 255, 255, 0);
  border-bottom-color: white;
  border-width: 8px;
  margin-left: -8px;
}
.menu li ul li a {
  padding: 8px 20px;
  white-space: nowrap;
  color: #4b4b59 !important;
}
.menu li ul li a:after {
  content: unset !important;
}
.menu li ul li a:hover, .menu li ul li a.active {
  color: #2049e7 !important;
}
.menu li ul li:first-child a {
  padding-top: 20px;
}
.menu li ul li:last-child a {
  padding-bottom: 20px;
}
.menu li:hover ul {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.state--menu-open .menu-toggle-hamburger span {
  background-color: transparent !important;
}
.state--menu-open .menu-toggle-hamburger span:before,
.state--menu-open .menu-toggle-hamburger span:after {
  top: 0;
}
.state--menu-open .menu-toggle-hamburger span:before {
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  left: 0;
  width: 100%;
  background-color: #aeafbd !important;
}
.state--menu-open .menu-toggle-hamburger span:after {
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  left: 0;
  width: 100%;
  background-color: #aeafbd !important;
}
.state--menu-open .mobile-menu-wrap {
  opacity: 1;
  visibility: visible;
  z-index: 9;
}
.state--menu-open .mobile-menu-wrap .menu {
  opacity: 1;
  visibility: visible;
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
.state--menu-open .mobile-menu-wrap .menu li a {
  -moz-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
.state--menu-open .mobile-menu-wrap .menu li:nth-child(1) a {
  transition-duration: 0.25s;
}
.state--menu-open .mobile-menu-wrap .menu li:nth-child(2) a {
  transition-duration: 0.5s;
}
.state--menu-open .mobile-menu-wrap .menu li:nth-child(3) a {
  transition-duration: 0.75s;
}
.state--menu-open .mobile-menu-wrap .menu li:nth-child(4) a {
  transition-duration: 1s;
}
.state--menu-open .mobile-menu-wrap .menu li:nth-child(5) a {
  transition-duration: 1.25s;
}
.state--menu-open .mobile-menu-wrap .menu li:nth-child(6) a {
  transition-duration: 1.5s;
}
.state--menu-open .mobile-menu-wrap .menu li:nth-child(7) a {
  transition-duration: 1.75s;
}
.state--menu-open .mobile-menu-wrap .menu li:nth-child(8) a {
  transition-duration: 2s;
}
.state--menu-open .mobile-menu-wrap .menu li:nth-child(9) a {
  transition-duration: 2.25s;
}
.state--menu-open .mobile-menu-wrap .menu li:nth-child(10) a {
  transition-duration: 2.5s;
}

.body--header-over .header {
  position: absolute;
  top: 0;
  z-index: 10;
}
.body--header-over .header--stuck {
  position: fixed;
  margin-top: 0;
}
.body--header-over .header--stuck .logo svg {
  fill: #aeafbd;
}
.body--header-over .header--stuck .logo:hover svg {
  fill: #1b2026;
}
.body--header-over .header--stuck .menu-toggle-hamburger span, .body--header-over .header--stuck .menu-toggle-hamburger span:before, .body--header-over .header--stuck .menu-toggle-hamburger span:after {
  background: #1b2026;
}
.body--header-over .header--stuck .menu-wrap .menu li a,
.body--header-over .header--stuck .menu-wrap .menu li span {
  color: #4b4b59;
}
.body--header-over .header--stuck .menu-wrap .menu li a:hover:not(span),
.body--header-over .header--stuck .menu-wrap .menu li span:hover:not(span) {
  color: #2049e7;
}
.body--header-over .header--stuck .menu-wrap .menu li a.active,
.body--header-over .header--stuck .menu-wrap .menu li span.active {
  color: #1b2026;
}
.body--header-over .logo svg {
  fill: #fff;
}
.body--header-over .menu-toggle-hamburger span, .body--header-over .menu-toggle-hamburger span:before, .body--header-over .menu-toggle-hamburger span:after {
  background: #fff;
}
.body--header-over .menu-wrap .menu li a,
.body--header-over .menu-wrap .menu li span {
  color: rgba(255, 255, 255, 0.8);
}
.body--header-over .menu-wrap .menu li a:hover:not(span), .body--header-over .menu-wrap .menu li a.active,
.body--header-over .menu-wrap .menu li span:hover:not(span),
.body--header-over .menu-wrap .menu li span.active {
  color: #fff;
}

.body--header-overlap .header {
  position: absolute;
  top: 0;
  z-index: 10;
}
.body--header-overlap .header--stuck {
  position: fixed;
  margin-top: 0;
}

@media only screen and (min-width: 768px) {
  .body--hamburger .menu-toggle {
    display: block;
  }
}
@media only screen and (min-width: 768px) {
  .body--hamburger .menu-wrap {
    opacity: 0;
    visibility: hidden;
    -moz-transform: translate(0, 16px);
    -o-transform: translate(0, 16px);
    -ms-transform: translate(0, 16px);
    -webkit-transform: translate(0, 16px);
    transform: translate(0, 16px);
    -webkit-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1);
    margin-right: 36px;
  }
}
.body--hamburger .header-tabs {
  -webkit-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1);
}
.body--hamburger.state--menu-open .menu-wrap {
  opacity: 1;
  visibility: visible;
  -moz-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}
.body--hamburger.state--menu-open .menu-wrap .menu li a {
  position: relative;
}
.body--hamburger.state--menu-open .header-tabs {
  opacity: 0;
  visibility: hidden;
}
.header-tabs {
  display: none;
}

@media only screen and (min-width: 768px) {
  .body--work .menu li[data-menu-item=Featured] {
    display: none;
  }
  .body--work .header-tabs {
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    -moz-transform: translate(-35%, 0);
    -o-transform: translate(-35%, 0);
    -ms-transform: translate(-35%, 0);
    -webkit-transform: translate(-35%, 0);
    transform: translate(-35%, 0);
    white-space: nowrap;
  }
  .body--work .header-tabs a {
    position: relative;
    display: inline-block;
    padding: 18px 18px;
    font-size: 14px;
    line-height: 1;
    letter-spacing: -0.01em;
    color: #aeafbd;
  }
  .body--work .header-tabs a:before {
    content: "";
    position: absolute;
    top: 21px;
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background: rgba(174, 175, 189, 0.5);
  }
  .body--work .header-tabs a:before {
    left: -4px;
  }
  .body--work .header-tabs a:first-child:before {
    display: none;
  }
  .body--work .header-tabs a:hover {
    color: #4b4b59;
  }
  .body--work .header-tabs a.active {
    color: #4b4b59;
  }
  .body--work .header-tabs a.active:after {
    content: "";
    position: absolute;
    bottom: 10px;
    left: 50%;
    margin-left: -10px;
    height: 3px;
    width: 20px;
    background: #2049e7;
  }
}
@media only screen and (min-width: 1024px) {
  .body--work .header-tabs {
    -moz-transform: translate(-40%, 0);
    -o-transform: translate(-40%, 0);
    -ms-transform: translate(-40%, 0);
    -webkit-transform: translate(-40%, 0);
    transform: translate(-40%, 0);
  }
}
@media only screen and (min-width: 1280px) {
  .body--work .header-tabs {
    -moz-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }
}

@media only screen and (min-width: 768px) {
  .body--small-nav .menu-toggle {
    display: block;
  }
  .body--small-nav .menu-wrap {
    padding-right: 70px;
  }
  .body--small-nav [data-menu-item=Directors],
  .body--small-nav [data-menu-item=News],
  .body--small-nav [data-menu-item=Contact] {
    width: 0;
    opacity: 0;
    -webkit-transition: width 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s, opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: width 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s, opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: width 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s, opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: width 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s, opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    transition: width 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s, opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--small-nav.state--menu-open [data-menu-item=Directors],
  .body--small-nav.state--menu-open [data-menu-item=News],
  .body--small-nav.state--menu-open [data-menu-item=Contact] {
    opacity: 1;
    -webkit-transition: width 0.25s cubic-bezier(0.2, 0.3, 0, 1), opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    -moz-transition: width 0.25s cubic-bezier(0.2, 0.3, 0, 1), opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    -ms-transition: width 0.25s cubic-bezier(0.2, 0.3, 0, 1), opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    -o-transition: width 0.25s cubic-bezier(0.2, 0.3, 0, 1), opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    transition: width 0.25s cubic-bezier(0.2, 0.3, 0, 1), opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  }
  .body--small-nav.state--menu-open [data-menu-item=Directors] {
    width: 100px;
  }
  .body--small-nav.state--menu-open [data-menu-item=News] {
    width: 78px;
  }
  .body--small-nav.state--menu-open [data-menu-item=Contact] {
    width: 92px;
  }
}

.contact-link {
  display: none;
  color: white;
  font-size: 14px;
  line-height: 1.4;
}
@media only screen and (min-width: 1024px) {
  .contact-link {
    display: block;
    position: fixed;
    z-index: 10;
    bottom: 59px;
    left: 50%;
    width: 160px;
    margin-left: 331px;
    text-align: right;
  }
}
@media only screen and (min-width: 1280px) {
  .contact-link {
    margin-left: 459px;
    bottom: 63px;
  }
}
.contact-link a {
  font-weight: 500;
  color: white;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
  text-decoration-color: transparent;
  -webkit-transition: text-decoration-color 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: text-decoration-color 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: text-decoration-color 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: text-decoration-color 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: text-decoration-color 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
.contact-link a:hover {
  text-decoration-color: white;
}
.contact-link:not(.body--home .contact-link) {
  mix-blend-mode: difference;
  bottom: 32px;
}
.body--contact .contact-link {
  display: none;
}

.state--animating.state--loading .contact-link {
  opacity: 0;
  -moz-transform: translate(0, 16px);
  -o-transform: translate(0, 16px);
  -ms-transform: translate(0, 16px);
  -webkit-transform: translate(0, 16px);
  transform: translate(0, 16px);
}
.state--animating .contact-link {
  -webkit-transition: all 1.25s cubic-bezier(0.2, 0.3, 0, 1) 1.5s;
  -moz-transition: all 1.25s cubic-bezier(0.2, 0.3, 0, 1) 1.5s;
  -ms-transition: all 1.25s cubic-bezier(0.2, 0.3, 0, 1) 1.5s;
  -o-transition: all 1.25s cubic-bezier(0.2, 0.3, 0, 1) 1.5s;
  transition: all 1.25s cubic-bezier(0.2, 0.3, 0, 1) 1.5s;
}

.footer {
  margin-top: 64px;
  padding: 64px 0;
  background: #2049e7;
  color: white;
}
@media only screen and (min-width: 768px) {
  .footer {
    padding: 96px 0;
  }
}
@media only screen and (min-width: 1024px) {
  .footer {
    z-index: 11;
  }
}
@media only screen and (min-width: 1280px) {
  .footer {
    padding: 128px 0;
  }
}
.footer__cta {
  padding-bottom: 64px;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .footer__cta {
    padding-bottom: 96px;
  }
}
@media only screen and (min-width: 1280px) {
  .footer__cta {
    padding-bottom: 128px;
  }
}
.footer__cta h2 {
  font-family: "ABC Maxi Round", sans-serif;
  text-transform: uppercase;
  line-height: 1;
  font-size: 40px;
  letter-spacing: -0.01em;
  color: white;
  text-wrap: balance;
}
@media only screen and (min-width: 768px) {
  .footer__cta h2 {
    font-size: 96px;
  }
}
.footer__cta p {
  font-family: "Instrument Serif", serif;
  font-size: 22px;
  line-height: 1.2;
  letter-spacing: 0;
  color: white;
  text-wrap: balance;
}
.footer__cta p a {
  color: white;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 5px;
  text-decoration-color: rgba(255, 255, 255, 0.4);
  -webkit-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
}
.footer__cta p a:hover {
  text-decoration-color: white;
}
.footer__cta p strong {
  font-weight: 600;
}

.footer-section {
  margin-top: 32px;
  padding: 0 8px;
  text-wrap: balance;
}
@media only screen and (min-width: 768px) {
  .footer-section {
    float: left;
    width: 50%;
  }
}
.footer-section:first-child, .footer-section:nth-child(2) {
  margin-top: 0;
}
.footer-section:nth-child(3), .footer-section:nth-child(4) {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .footer-section {
    padding: 0 16px;
  }
  .footer-section:nth-child(3), .footer-section:nth-child(4) {
    width: 50%;
  }
  .footer-section:nth-child(3) {
    clear: left;
  }
}
@media only screen and (min-width: 1024px) {
  .footer-section {
    width: 25% !important;
    margin-top: 0;
  }
  .footer-section:nth-child(3) {
    clear: none;
  }
}
.footer-section--email {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .footer-section--email {
    display: block;
  }
}
.footer-section--mobile-email {
  display: block;
}
@media only screen and (min-width: 1024px) {
  .footer-section--mobile-email {
    display: none;
  }
}
.footer-section h4 {
  font-family: "Instrument Serif", serif;
  position: relative;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0;
  color: white;
}
.footer-section p {
  font-size: 14px;
  line-height: 1.625;
}
.footer-section p:nth-child(3) {
  margin-top: 12px;
}
@media only screen and (min-width: 768px) {
  .footer-section p {
    font-size: 16px;
  }
}
.footer-section p span {
  display: block;
  padding: 7px 0 3px;
  font-size: 10px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.2em;
}
.footer-section p a {
  color: white;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
  text-decoration-color: rgba(255, 255, 255, 0.4);
  -webkit-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
}
.footer-section p a:hover {
  text-decoration-color: white;
}
.footer-section--last p {
  margin-top: 2px;
  margin-bottom: 20px;
}

.mailchimp {
  position: relative;
  margin-top: 20px;
}
.mailchimp input[type=email] {
  width: 100%;
  border: 0;
  background: #fff;
  padding: 9px 70px 10px 14px;
  font-size: 16px;
  box-shadow: 0 5px 20px rgba(174, 175, 189, 0.1);
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
.mailchimp input[type=email]:focus {
  outline: none;
  box-shadow: 0 5px 30px rgba(1, 2, 9, 0.1);
}
.mailchimp .button {
  position: absolute;
  top: 5px;
  right: 5px;
  background: #aeafbd;
}
.mailchimp:focus-within .button {
  background: #4b4b59;
}
.mailchimp:focus-within .button:hover {
  background: #e93c4c;
}

.social {
  list-style: none;
  margin-top: 16px;
  display: flex;
  gap: 8px;
}
.social li a {
  position: relative;
  display: flex;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background: white;
  color: #2049e7;
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
.social li a svg {
  margin: auto;
  fill: currentColor;
}
.social li a:hover {
  transform: scale(1.2);
}

.footer-legal {
  margin-top: 32px;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.6);
  display: flex;
  align-items: center;
  flex-flow: wrap;
  gap: 16px;
}
@media only screen and (min-width: 768px) {
  .footer-legal {
    margin-top: 42px;
    font-size: 14px;
  }
}
@media only screen and (min-width: 1280px) {
  .footer-legal {
    margin-top: 54px;
  }
}
.footer-legal a {
  color: rgba(255, 255, 255, 0.6);
}
.footer-legal a:hover {
  color: white;
}

.footer__credit {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: white !important;
  opacity: 0.6;
  text-decoration: none;
  transition: opacity 0.2s cubic-bezier(0.2, 0.3, 0, 1);
}
.footer__credit:hover {
  opacity: 1;
}
.footer__credit svg {
  height: 32px;
}

@media only screen and (min-width: 1024px) {
  .footer.fadein--animating {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .footer.fadein--animating.fadein {
    opacity: 0;
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
  }
}
.cookies {
  position: fixed;
  z-index: 20;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #2049e7;
  padding: 10px 50px 10px 16px;
  box-shadow: 0 0 30px rgba(1, 2, 9, 0.1);
  -moz-transform: translate(0, 20px);
  -o-transform: translate(0, 20px);
  -ms-transform: translate(0, 20px);
  -webkit-transform: translate(0, 20px);
  transform: translate(0, 20px);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}

.state--cookies .cookies {
  opacity: 1;
  visibility: visible;
  -moz-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.cookies__text {
  display: block;
  font-size: 11px;
  line-height: 1.5;
  color: white;
}
@media only screen and (min-width: 768px) {
  .cookies__text {
    font-size: 13px;
  }
}
.cookies__text strong, .cookies__text a {
  font-weight: 400;
}
.cookies__text a {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: underline;
  text-decoration-color: white;
  text-underline-position: under;
}
.cookies__text a:hover {
  color: white;
}

.cookies__close {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 40px;
  cursor: pointer;
  border-left: 1px solid rgb(21.5902834008, 58.4736842105, 200.6097165992);
  display: flex;
  align-items: center;
  justify-content: center;
}
.cookies__close svg {
  height: 20px;
  fill: white;
}

.grid-item {
  display: block;
  position: relative;
  margin-top: 26px;
}
@media only screen and (min-width: 768px) {
  .grid-item {
    margin-top: 31px;
  }
}
@media only screen and (min-width: 1024px) {
  .grid-item {
    margin-top: 37px;
  }
}
@media only screen and (min-width: 1024px) {
  .grid-item:hover.js-video-preview .grid-item__video {
    opacity: 1;
    visibility: visible;
  }
  .grid-item:hover .grid-item__details .grid-item__label {
    opacity: 1;
    visibility: visible;
    -moz-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    -webkit-transition: all 0.3s cubic-bezier(0.2, 0.3, 0, 1) 0.1s;
    -moz-transition: all 0.3s cubic-bezier(0.2, 0.3, 0, 1) 0.1s;
    -ms-transition: all 0.3s cubic-bezier(0.2, 0.3, 0, 1) 0.1s;
    -o-transition: all 0.3s cubic-bezier(0.2, 0.3, 0, 1) 0.1s;
    transition: all 0.3s cubic-bezier(0.2, 0.3, 0, 1) 0.1s;
  }
  .grid-item:hover .grid-item__details h3 {
    -moz-transform: translate(62px, 0);
    -o-transform: translate(62px, 0);
    -ms-transform: translate(62px, 0);
    -webkit-transform: translate(62px, 0);
    transform: translate(62px, 0);
  }
  .grid-item.grid-item--director:hover .grid-item__details h3 {
    -moz-transform: translate(56px, 0);
    -o-transform: translate(56px, 0);
    -ms-transform: translate(56px, 0);
    -webkit-transform: translate(56px, 0);
    transform: translate(56px, 0);
  }
}

.grid-item__media {
  position: relative;
  height: 0;
  padding-bottom: 56.25%;
  background: #f5f5f7;
  overflow: hidden;
  border-radius: 8px;
}

.grid-item__image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.grid-item__image img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.grid-item__image--11 {
  display: none;
}

.grid-item__video {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .grid-item__video {
    display: block;
    position: absolute;
    top: -1px;
    right: -1px;
    bottom: -1px;
    left: -1px;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .grid-item__video video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

.grid-item__details {
  position: relative;
  margin-top: 9px;
}
@media only screen and (min-width: 768px) {
  .grid-item__details {
    margin-top: 13px;
  }
}
.grid-item__details .grid-item__label {
  position: absolute;
  top: 2px;
  left: 0;
  font-family: "ABC Maxi Round", sans-serif;
  text-transform: uppercase;
  font-size: 16px;
  color: #fdbe47;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  -moz-transform: translate(-12px, 0);
  -o-transform: translate(-12px, 0);
  -ms-transform: translate(-12px, 0);
  -webkit-transform: translate(-12px, 0);
  transform: translate(-12px, 0);
  -webkit-transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
}
.grid-item__details .grid-item__label svg {
  margin: 0 4px 0 0;
  height: 10px;
  fill: #fdbe47;
}
.grid-item__details h3 {
  font-size: 14px;
}
.grid-item__details h3 span {
  margin-left: 6px;
  color: #aeafbd;
}
@media only screen and (min-width: 768px) {
  .grid-item__details h3 {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}
@media only screen and (min-width: 1024px) {
  .grid-item__details h3 {
    font-size: 16px;
  }
}
@media only screen and (min-width: 1024px) {
  .grid-item__details h3 {
    -webkit-transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 0.4s cubic-bezier(0.2, 0.3, 0, 1);
  }
}

.video {
  display: none;
  position: fixed;
  z-index: 100;
  top: 0;
  width: 100vw;
  bottom: 0;
  left: 0;
  overflow-y: scroll;
}
.video > .wrap {
  min-height: calc(100vh - 50px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.state--modal {
  overflow: hidden;
}
.state--modal .video {
  display: block;
}

.state--playing .video__inner {
  opacity: 1;
  -moz-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}
.state--playing .video__header__title {
  opacity: 1;
}

.video__background {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #f5f5f7;
  cursor: pointer;
}

.video__header {
  position: sticky;
  top: 0;
  z-index: 10;
  background: #fff;
  box-shadow: 0 5px 30px rgba(1, 2, 9, 0.1);
}

.video__header__title {
  display: none;
}
@media only screen and (min-width: 768px) {
  .video__header__title {
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    -moz-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    padding: 22px 0;
    font-size: 14px;
    opacity: 0;
    -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .video__header__title > span {
    color: #4b4b59;
    font-weight: 400;
  }
  .video__header__title a {
    margin-left: 6px;
    color: #aeafbd;
  }
  .video__header__title a:hover {
    color: #e93c4c;
  }
}

.video__header__close {
  float: right;
  margin-right: -15px;
  padding: 19px 15px;
  font-size: 10px;
  line-height: 18px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: #aeafbd;
  cursor: pointer;
  -webkit-transition: color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  transition: color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
}
.video__header__close svg {
  vertical-align: bottom;
  margin-left: 8px;
  height: 20px;
  fill: #aeafbd;
  -webkit-transition: fill 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: fill 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: fill 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: fill 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  transition: fill 0.2s cubic-bezier(0.2, 0.3, 0, 1);
}
.video__header__close:hover {
  color: #4b4b59;
}
.video__header__close:hover svg {
  fill: #4b4b59;
}

.video__inner {
  background: #fff;
  box-shadow: 0 5px 30px rgba(1, 2, 9, 0.1);
  opacity: 0;
  -moz-transform: translate(0, 32px);
  -o-transform: translate(0, 32px);
  -ms-transform: translate(0, 32px);
  -webkit-transform: translate(0, 32px);
  transform: translate(0, 32px);
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}

.video__player {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  background: #010209;
}

.slate-player {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.flowplayer .fp-color,
.slate-player .flowplayer .fp-progress:after,
.slate-player .flowplayer .fp-volumebar .fp-color {
  background-color: #e93c4c;
}

.flowplayer .fp-header {
  visibility: hidden;
}

.video__description {
  padding: 20px;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .video__description {
    padding: 32px;
  }
}
@media only screen and (min-width: 1024px) {
  .video__description {
    padding: 44px;
  }
}
@media only screen and (min-width: 1280px) {
  .video__description {
    padding: 52px 0;
    max-width: 1000px;
    margin: 0 auto;
  }
}
.video__description p {
  font-family: "Instrument Serif", serif;
  font-size: 22px;
  line-height: 1.5;
  letter-spacing: -0.01em;
}
@media only screen and (min-width: 768px) {
  .video__description p {
    font-size: 24px;
  }
}
@media only screen and (min-width: 1280px) {
  .video__description p {
    font-size: 30px;
  }
}
.video__description p a {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  color: #4b4b59;
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
.video__description p a:hover {
  color: #4b4b59;
  text-decoration-color: #e93c4c;
}
.video__description.hidden {
  display: none;
}

.video__player--image {
  height: auto;
  padding-bottom: 0;
  background: transparent;
}
.video__player--image .video__muted {
  display: none;
}
.video__player--image .slate-player {
  position: relative;
  width: auto;
  height: auto;
}

.slick-slider {
  margin-bottom: 0;
}

.slick-track {
  width: auto !important;
}

.slick-slide {
  display: none !important;
  width: 100% !important;
  background: #fff;
  left: auto !important;
  right: auto !important;
  margin: 0 auto;
}
.slick-slide:first-of-type {
  display: block !important;
}
.slick-slide img {
  margin: 0 auto;
}

.video__case-study--loading {
  visibility: hidden;
}

.post {
  overflow: hidden;
}
.post:after {
  content: "";
  clear: both;
  display: table;
}
.post .wrap {
  max-width: 644px;
}

.block {
  float: left;
  clear: both;
  width: 100%;
  margin-top: 42px;
}
@media only screen and (min-width: 768px) {
  .block {
    margin-top: 52px;
  }
}
@media only screen and (min-width: 1280px) {
  .block {
    margin-top: 64px;
  }
}
.block:first-child {
  margin-top: 0;
}
.block:last-child {
  padding-bottom: 42px;
}
@media only screen and (min-width: 768px) {
  .block:last-child {
    padding-bottom: 52px;
  }
}
@media only screen and (min-width: 1280px) {
  .block:last-child {
    padding-bottom: 64px;
  }
}
.block .wrap {
  max-width: 644px;
}
@media only screen and (min-width: 768px) {
  .block .wrap--wide {
    max-width: 768px;
  }
}
@media only screen and (min-width: 1024px) {
  .block .wrap--wide {
    max-width: 1024px;
  }
}
@media only screen and (min-width: 1280px) {
  .block .wrap--wide {
    max-width: 1280px;
  }
}

.block--text blockquote {
  margin: 42px auto;
}
@media only screen and (min-width: 768px) {
  .block--text blockquote {
    margin: 52px auto;
  }
}
@media only screen and (min-width: 1024px) {
  .block--text blockquote {
    margin: 52px -112px;
    text-align: center;
  }
}
@media only screen and (min-width: 1280px) {
  .block--text blockquote {
    margin: 64px -212px;
  }
}
.block--text a {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  color: #4b4b59;
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
.block--text a:hover {
  color: #4b4b59;
  text-decoration-color: #e93c4c;
}

.post-carousel .owl-stage-outer {
  overflow: visible;
}
.post-carousel .owl-item {
  opacity: 0.4;
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  pointer-events: none;
}
.post-carousel .owl-item .post-video__cover__play {
  opacity: 0;
}
.post-carousel .owl-item.active {
  opacity: 1;
  pointer-events: auto;
}
.post-carousel .owl-item.active .post-video__cover__play {
  opacity: 1;
}
.post-carousel .owl-nav {
  margin-top: 10px;
}
.post-carousel .owl-nav .owl-prev,
.post-carousel .owl-nav .owl-next {
  border: 0;
}
.post-carousel .owl-nav .owl-prev:focus,
.post-carousel .owl-nav .owl-next:focus {
  outline: none;
}
.post-carousel .owl-nav .owl-prev.disabled,
.post-carousel .owl-nav .owl-next.disabled {
  pointer-events: none;
}
.post-carousel .owl-nav .owl-prev.disabled .button,
.post-carousel .owl-nav .owl-next.disabled .button {
  background: #aeafbd;
}
.post-carousel .owl-nav .owl-next {
  margin-left: 10px;
}
@media only screen and (min-width: 1024px) {
  .post-carousel .owl-nav {
    margin-top: 0;
    position: absolute;
    top: 0;
    left: 50%;
    bottom: 0;
  }
  .post-carousel .owl-nav .owl-prev,
  .post-carousel .owl-nav .owl-next {
    position: absolute;
    width: 174px;
    height: 100%;
    background: transparent;
    -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .post-carousel .owl-nav .owl-prev .button,
  .post-carousel .owl-nav .owl-next .button {
    border-radius: 16px;
    background: #2049e7 !important;
  }
  .post-carousel .owl-nav .owl-prev:hover,
  .post-carousel .owl-nav .owl-next:hover {
    transform: scale(1.1);
  }
  .post-carousel .owl-nav .owl-prev.disabled,
  .post-carousel .owl-nav .owl-next.disabled {
    opacity: 0;
  }
  .post-carousel .owl-nav .owl-prev {
    right: 318px;
  }
  .post-carousel .owl-nav .owl-next {
    left: 318px;
    margin-left: 0;
  }
}
@media only screen and (min-width: 1280px) {
  .post-carousel .owl-nav .owl-prev,
  .post-carousel .owl-nav .owl-next {
    width: 302px;
  }
}

@media only screen and (min-width: 1024px) {
  .post-carousel--video .owl-nav {
    bottom: 33px;
  }
}

.post-video {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  background: #f5f5f7;
}
.post-video--playing .post-video__cover {
  opacity: 0;
  visibility: hidden;
}

.post-video__cover {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  cursor: pointer;
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
.post-video__cover:hover .post-video__cover__play {
  transform: scale(1.2) translate(-45%, -45%);
}
.post-video__cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.post-video__cover__play {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 64px;
  height: 64px;
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
.post-video__cover__play svg {
  width: 100%;
  height: 100%;
  fill: #fff;
}

.post-photo img {
  margin: 0 auto;
}

.post-photo-grid {
  display: grid;
  row-gap: 32px;
  column-gap: 32px;
}
@media only screen and (min-width: 768px) {
  .post-photo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: center;
  }
}

.post-carousel .post-photo img {
  width: auto;
  max-height: 604px;
  margin: 0 auto;
}

.video__more {
  overflow: hidden;
}
.video__more h2 {
  font-family: "Instrument Serif", serif;
}

.video__muted {
  position: absolute;
  top: 16px;
  right: 16px;
  padding: 10px 10px 10px 15px;
  background: #fff;
  box-shadow: 0 0 30px rgba(1, 2, 9, 0.1);
  width: 286px;
  font-size: 14px;
  -moz-transform: translate(-16px, 0);
  -o-transform: translate(-16px, 0);
  -ms-transform: translate(-16px, 0);
  -webkit-transform: translate(-16px, 0);
  transform: translate(-16px, 0);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
.video__muted .button {
  margin-left: 8px;
}

.state--muted .video__muted {
  -moz-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
  opacity: 1;
  visibility: visible;
}

.html--home {
  height: 100%;
  min-height: 500px;
}

.body--home {
  height: 100%;
}
.body--home .page {
  height: 100%;
}

.home {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #1b2026;
}

.home__carousel {
  height: 100%;
}
.home__carousel .owl-stage-outer,
.home__carousel .owl-stage,
.home__carousel .owl-item {
  height: 100%;
}
.home__carousel .owl-dots {
  display: none;
}
.home__carousel .owl-item.active .home-item__details strong,
.home__carousel .owl-item.active .home-item__details a {
  opacity: 1;
  -moz-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}
.home__carousel .owl-item.active .home-item__details strong {
  -webkit-transition: all 0.75s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
  -moz-transition: all 0.75s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
  -ms-transition: all 0.75s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
  -o-transition: all 0.75s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
  transition: all 0.75s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
}
.home__carousel .owl-item.active .home-item__details a {
  -webkit-transition: all 0.75s cubic-bezier(0.2, 0.3, 0, 1) 0.2s;
  -moz-transition: all 0.75s cubic-bezier(0.2, 0.3, 0, 1) 0.2s;
  -ms-transition: all 0.75s cubic-bezier(0.2, 0.3, 0, 1) 0.2s;
  -o-transition: all 0.75s cubic-bezier(0.2, 0.3, 0, 1) 0.2s;
  transition: all 0.75s cubic-bezier(0.2, 0.3, 0, 1) 0.2s;
}

.home-item__video {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
}
.home-item__video video {
  position: absolute;
  top: 0;
  left: 0;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 101%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  object-fit: cover;
}

.home-item__overlay-top {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 58%;
  left: 0;
  background: -moz-linear-gradient(top, rgba(29, 29, 40, 0.2) 0%, rgba(29, 29, 40, 0) 100%);
  background: -webkit-linear-gradient(top, rgba(29, 29, 40, 0.2) 0%, rgba(29, 29, 40, 0) 100%);
  background: linear-gradient(to bottom, rgba(29, 29, 40, 0.2) 0%, rgba(29, 29, 40, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#331d1d28", endColorstr="#001d1d28",GradientType=0 ); /* IE6-9 */
}

.home-item__overlay-bottom {
  position: absolute;
  top: 50%;
  right: 0;
  bottom: 0;
  left: 0;
  background: -moz-linear-gradient(top, rgba(29, 29, 40, 0) 0%, rgba(29, 29, 40, 0.5) 78%, rgba(29, 29, 40, 0.5) 100%);
  background: -webkit-linear-gradient(top, rgba(29, 29, 40, 0) 0%, rgba(29, 29, 40, 0.5) 78%, rgba(29, 29, 40, 0.5) 100%);
  background: linear-gradient(to bottom, rgba(29, 29, 40, 0) 0%, rgba(29, 29, 40, 0.5) 78%, rgba(29, 29, 40, 0.5) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#001d1d28", endColorstr="#801d1d28",GradientType=0 );
}

.home-item__details {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .home-item__details {
    display: block;
    position: absolute;
    bottom: 76px;
    left: 0;
    right: 0;
    text-align: right;
    font-size: 16px;
    line-height: 1;
    letter-spacing: 0.01em;
    color: #fff;
  }
  .home-item__details strong,
  .home-item__details a {
    display: inline-block;
    opacity: 0;
    -moz-transform: translate(-16px, 0);
    -o-transform: translate(-16px, 0);
    -ms-transform: translate(-16px, 0);
    -webkit-transform: translate(-16px, 0);
    transform: translate(-16px, 0);
    -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.5s, opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.5s, opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.5s, opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.5s, opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.5s, opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .home-item__details a {
    margin-left: 4px;
    color: #fff;
  }
}

.home__content {
  position: absolute;
  z-index: 2;
  bottom: 30px;
  left: 50%;
  width: 100%;
  margin-left: -50vw;
  padding: 0 16px;
}
@media only screen and (min-width: 480px) {
  .home__content {
    margin-left: -240px;
    max-width: 480px;
  }
}
@media only screen and (min-width: 768px) {
  .home__content {
    bottom: 56px;
    max-width: 706px;
    padding: 0 20px;
    margin-left: -384px;
  }
}
@media only screen and (min-width: 1024px) {
  .home__content {
    margin-left: -512px;
  }
}
@media only screen and (min-width: 1280px) {
  .home__content {
    max-width: 800px;
    margin-left: -640px;
  }
}
.home__content p {
  font-family: "Instrument Serif", serif;
  font-size: 22px;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: #fff;
  text-wrap: balance;
}
@media only screen and (max-width: 767px) {
  .home__content p br {
    content: " ";
  }
  .home__content p br:after {
    content: " ";
  }
}
@media only screen and (min-width: 768px) {
  .home__content p {
    font-size: 28px;
  }
}
@media only screen and (min-width: 1280px) {
  .home__content p {
    font-size: 38px;
  }
}
.home__content p a {
  display: inline-block;
  position: relative;
  color: #fff;
}
.home__content p a:after {
  content: "";
  position: absolute;
  bottom: 3px;
  right: 0;
  left: 0;
  height: 2px;
  background: #fff;
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
.home__content p a:hover:after {
  background: #e93c4c;
}

.state--cookies .home__content,
.state--cookies .home-item__details,
.state--cookies .owl-dots,
.state--cookies .contact-link {
  -moz-transform: translate(0, -68px);
  -o-transform: translate(0, -68px);
  -ms-transform: translate(0, -68px);
  -webkit-transform: translate(0, -68px);
  transform: translate(0, -68px);
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) !important;
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) !important;
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) !important;
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) !important;
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1) !important;
}
@media only screen and (min-width: 768px) {
  .state--cookies .home__content,
  .state--cookies .home-item__details,
  .state--cookies .owl-dots,
  .state--cookies .contact-link {
    -moz-transform: translate(0, -58px);
    -o-transform: translate(0, -58px);
    -ms-transform: translate(0, -58px);
    -webkit-transform: translate(0, -58px);
    transform: translate(0, -58px);
  }
}
@media only screen and (min-width: 1024px) {
  .state--cookies .home__content,
  .state--cookies .home-item__details,
  .state--cookies .owl-dots,
  .state--cookies .contact-link {
    -moz-transform: translate(0, -40px);
    -o-transform: translate(0, -40px);
    -ms-transform: translate(0, -40px);
    -webkit-transform: translate(0, -40px);
    transform: translate(0, -40px);
  }
}

.preloader {
  position: fixed;
  z-index: 10;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #fdbe47;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 80px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}

.preloader__logo {
  -moz-transform: scale(0.2);
  -o-transform: scale(0.2);
  -ms-transform: scale(0.2);
  -webkit-transform: scale(0.2);
  transform: scale(0.2);
  opacity: 0;
  visibility: hidden;
}
.preloader__logo svg {
  height: 24px;
  fill: #fff;
}

.preloader__progress {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
}
.preloader__progress-bar {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0;
  background: #f5f5f7;
  -webkit-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}

.body--preload.state--animating.state--loading .preloader {
  opacity: 1;
  visibility: visible;
}
.body--preload.state--animating.state--loading .preloader__logo {
  opacity: 1;
  visibility: visible;
  -moz-transform: scale(1);
  -o-transform: scale(1);
  -ms-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
}
.body--preload.state--animating.state--loading .header {
  opacity: 0;
}
.body--preload.state--animating.state--loading .home__content {
  opacity: 0;
  -moz-transform: translate(32px, 0);
  -o-transform: translate(32px, 0);
  -ms-transform: translate(32px, 0);
  -webkit-transform: translate(32px, 0);
  transform: translate(32px, 0);
}
.body--preload.state--animating.state--loading .home-item__details strong,
.body--preload.state--animating.state--loading .home-item__details a,
.body--preload.state--animating.state--loading .owl-dots {
  opacity: 0;
  -moz-transform: translate(-32px, 0);
  -o-transform: translate(-32px, 0);
  -ms-transform: translate(-32px, 0);
  -webkit-transform: translate(-32px, 0);
  transform: translate(-32px, 0);
}
.body--preload.state--animating .preloader {
  -webkit-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -moz-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -ms-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -o-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
}
.body--preload.state--animating .preloader__logo {
  -webkit-transition: all 0.5s cubic-bezier(0.94, -0.6, 0.62, 0.69);
  -moz-transition: all 0.5s cubic-bezier(0.94, -0.6, 0.62, 0.69);
  -ms-transition: all 0.5s cubic-bezier(0.94, -0.6, 0.62, 0.69);
  -o-transition: all 0.5s cubic-bezier(0.94, -0.6, 0.62, 0.69);
  transition: all 0.5s cubic-bezier(0.94, -0.6, 0.62, 0.69);
}
.body--preload.state--animating .header {
  -webkit-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1) 0.75s;
  -moz-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1) 0.75s;
  -ms-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1) 0.75s;
  -o-transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1) 0.75s;
  transition: all 0.5s cubic-bezier(0.2, 0.3, 0, 1) 0.75s;
}
.body--preload.state--animating .home__content {
  -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1.25s;
  -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1.25s;
  -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1.25s;
  -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1.25s;
  transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1.25s;
}
.body--preload.state--animating .home-item__details strong,
.body--preload.state--animating .home-item__details a {
  -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1.5s !important;
  -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1.5s !important;
  -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1.5s !important;
  -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1.5s !important;
  transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1.5s !important;
}
.body--preload.state--animating .owl-dots {
  -webkit-transition: all 1.25s cubic-bezier(0.2, 0.3, 0, 1) 1.5s;
  -moz-transition: all 1.25s cubic-bezier(0.2, 0.3, 0, 1) 1.5s;
  -ms-transition: all 1.25s cubic-bezier(0.2, 0.3, 0, 1) 1.5s;
  -o-transition: all 1.25s cubic-bezier(0.2, 0.3, 0, 1) 1.5s;
  transition: all 1.25s cubic-bezier(0.2, 0.3, 0, 1) 1.5s;
}

.body--directors .grid {
  margin-top: -20px;
}
@media only screen and (min-width: 768px) {
  .body--directors .grid {
    margin-top: 0;
  }
}
.body--directors .grid .column {
  width: 50%;
}
@media only screen and (min-width: 1024px) {
  .body--directors .grid .column {
    position: relative;
    z-index: 1;
    width: 33.33%;
  }
}
.body--directors .grid-item__media {
  padding-bottom: 100%;
}

.directors-list {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .directors-list {
    display: block;
    text-align: center;
    margin: 24px 0 4px;
  }
}
.directors-list a {
  position: relative;
  display: inline-block;
  padding: 6px 14px;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.01em;
  color: #aeafbd;
}
.directors-list a:before {
  content: "";
  position: absolute;
  top: 12px;
  width: 3px;
  height: 3px;
  border-radius: 100%;
  background: #aeafbd;
}
.directors-list a:before {
  left: -2px;
}
.directors-list a:first-child:before {
  content: unset;
}
.directors-list a:hover {
  color: #4b4b59;
}

.directors-list__wrap {
  margin: 0 auto;
}
@media only screen and (min-width: 1024px) {
  .directors-list__wrap {
    max-width: 100%;
  }
}
@media only screen and (min-width: 1280px) {
  .directors-list__wrap {
    max-width: 100%;
  }
}

@media only screen and (min-width: 1024px) {
  .body--directors.state--animating.state--loading .directors-list {
    opacity: 0;
  }
  .body--directors.state--animating.state--loading .grid {
    opacity: 0;
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
  }
  .body--directors.state--animating .directors-list {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--directors.state--animating .grid {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  }
  .body--directors .column.fadein--animating {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.3s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.3s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.3s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.3s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.3s;
  }
  .body--directors .column.fadein--animating:nth-child(3n-1) {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.15s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.15s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.15s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.15s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.15s;
  }
  .body--directors .column.fadein--animating:nth-child(3n-2) {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--directors .column.fadein--animating.fadein {
    opacity: 0;
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
    pointer-events: none;
  }
}
.directors-preview {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .directors-preview {
    display: block;
    position: absolute;
    top: 37px;
    right: 20px;
    left: 20px;
    padding-bottom: 56.25%;
  }
}

.directors-preview__item {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  visibility: hidden;
}
.directors-preview__item.active {
  visibility: visible;
}
.directors-preview__item img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media only screen and (min-width: 1024px) {
  .state--director-list .grid-item {
    visibility: hidden;
  }
}

.director-header {
  position: relative;
}
.director-header--red .director-header__image {
  background: #e93c4c;
}
.director-header--blue .director-header__image {
  background: #2049e7;
}
.director-header--yellow .director-header__image {
  background: #fdbe47;
}
.director-header--green .director-header__image {
  background: #699e6e;
}
.director-header--black .director-header__image {
  background: #010209;
}
.director-header--black .director-header__image img {
  mix-blend-mode: difference;
}

.director-header__image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #2049e7;
}
.director-header__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(100);
  opacity: 0.2;
  mix-blend-mode: multiply;
}

.director-header__content {
  position: relative;
  padding: 100px 0 66px;
  text-align: center;
  color: white;
}
@media only screen and (min-width: 768px) {
  .director-header__content {
    padding: 112px 0 118px;
  }
}
@media only screen and (min-width: 1280px) {
  .director-header__content {
    padding: 132px 0 181px;
  }
}
@media only screen and (min-width: 768px) {
  .director-header__content .wrap {
    max-width: 800px;
  }
}
.director-header__content h1 {
  font-family: "ABC Maxi Round", sans-serif;
  text-transform: uppercase;
  line-height: 1;
  font-size: 40px;
  letter-spacing: -0.01em;
  text-wrap: balance;
  color: rgba(255, 255, 255, 0.9);
}
@media only screen and (min-width: 768px) {
  .director-header__content h1 {
    font-size: 64px;
  }
}
@media only screen and (min-width: 1280px) {
  .director-header__content h1 {
    font-size: 96px;
  }
}
.director-header__content p {
  margin-top: 12px;
  text-wrap: balance;
  color: rgba(255, 255, 255, 0.8);
}
.director-header__content p:first-of-type {
  font-family: "Instrument Serif", serif;
  font-size: 24px;
  line-height: 1.2;
  letter-spacing: 0;
}
@media only screen and (min-width: 768px) {
  .director-header__content p:first-of-type {
    font-size: 28px;
  }
}
@media only screen and (min-width: 1280px) {
  .director-header__content p:first-of-type {
    font-size: 32px;
  }
}
.director-header__content p a {
  color: white;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
  text-decoration-color: rgba(255, 255, 255, 0.4);
  -webkit-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
}
.director-header__content p a:hover {
  text-decoration-color: white;
}

.body--director .grid {
  margin-top: -58px;
}
@media only screen and (min-width: 768px) {
  .body--director .grid {
    margin-top: -95px;
  }
}
@media only screen and (min-width: 1024px) {
  .body--director .grid {
    margin-top: -101px;
  }
}
@media only screen and (min-width: 1280px) {
  .body--director .grid {
    margin-top: -133px;
  }
}
@media only screen and (min-width: 768px) {
  .body--director .grid[data-reel-limit="3"] .column:nth-child(6n-4) .grid-item__media, .body--director .grid[data-reel-limit="3"] .column:nth-child(6n-1) .grid-item__media {
    padding-bottom: 100%;
  }
  .body--director .grid[data-reel-limit="3"] .column:nth-child(6n-4) .grid-item__image--169, .body--director .grid[data-reel-limit="3"] .column:nth-child(6n-1) .grid-item__image--169 {
    display: none;
  }
  .body--director .grid[data-reel-limit="3"] .column:nth-child(6n-4) .grid-item__image--11, .body--director .grid[data-reel-limit="3"] .column:nth-child(6n-1) .grid-item__image--11 {
    display: block;
  }
  .body--director .grid[data-reel-limit="4"] .column:nth-child(6n-4) .grid-item__media, .body--director .grid[data-reel-limit="4"] .column:nth-child(6n-3) .grid-item__media {
    padding-bottom: 100%;
  }
  .body--director .grid[data-reel-limit="4"] .column:nth-child(6n-4) .grid-item__image--169, .body--director .grid[data-reel-limit="4"] .column:nth-child(6n-3) .grid-item__image--169 {
    display: none;
  }
  .body--director .grid[data-reel-limit="4"] .column:nth-child(6n-4) .grid-item__image--11, .body--director .grid[data-reel-limit="4"] .column:nth-child(6n-3) .grid-item__image--11 {
    display: block;
  }
  .body--director .grid[data-reel-limit="5"] .column:nth-child(6n-4) .grid-item__media {
    padding-bottom: 100%;
  }
  .body--director .grid[data-reel-limit="5"] .column:nth-child(6n-4) .grid-item__image--169 {
    display: none;
  }
  .body--director .grid[data-reel-limit="5"] .column:nth-child(6n-4) .grid-item__image--11 {
    display: block;
  }
  .body--director .grid[data-reel-limit="6"] .column:nth-child(6n-4) .grid-item__media, .body--director .grid[data-reel-limit="6"] .column:nth-child(6n-1) .grid-item__media {
    padding-bottom: 100%;
  }
  .body--director .grid[data-reel-limit="6"] .column:nth-child(6n-4) .grid-item__image--169, .body--director .grid[data-reel-limit="6"] .column:nth-child(6n-1) .grid-item__image--169 {
    display: none;
  }
  .body--director .grid[data-reel-limit="6"] .column:nth-child(6n-4) .grid-item__image--11, .body--director .grid[data-reel-limit="6"] .column:nth-child(6n-1) .grid-item__image--11 {
    display: block;
  }
}
.body--director .grid .button {
  display: block;
  margin: 28px auto 0;
}
@media only screen and (min-width: 768px) {
  .body--director .grid .button {
    margin-top: 38px;
  }
}
@media only screen and (min-width: 1280px) {
  .body--director .grid .button {
    margin-top: 58px;
  }
}
.body--director .grid .more-clips {
  display: none;
}
.body--director .grid .column.fadein-more--animating {
  -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
}
.body--director .grid .column.fadein-more--animating.fadein-more {
  opacity: 0;
  -moz-transform: translate(0, 26px);
  -o-transform: translate(0, 26px);
  -ms-transform: translate(0, 26px);
  -webkit-transform: translate(0, 26px);
  transform: translate(0, 26px);
  pointer-events: none;
}

@media only screen and (min-width: 1024px) {
  .body--director.state--animating.state--loading .director-header__image {
    opacity: 0;
  }
  .body--director.state--animating.state--loading .director-header__content,
  .body--director.state--animating.state--loading .grid {
    opacity: 0;
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
  }
  .body--director.state--animating .director-header__image {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--director.state--animating .director-header__content {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  }
  .body--director.state--animating .grid {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
  }
  .body--director .column.fadein--animating {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--director .column.fadein--animating.fadein {
    opacity: 0;
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
    pointer-events: none;
  }
}
@media only screen and (min-width: 768px) {
  .body--work .column:nth-child(6n-4) .grid-item__media, .body--work .column:nth-child(6n-1) .grid-item__media {
    padding-bottom: 100%;
  }
  .body--work .column:nth-child(6n-4) .grid-item__image--169, .body--work .column:nth-child(6n-1) .grid-item__image--169 {
    display: none;
  }
  .body--work .column:nth-child(6n-4) .grid-item__image--11, .body--work .column:nth-child(6n-1) .grid-item__image--11 {
    display: block;
  }
}
@media only screen and (min-width: 1024px) {
  .body--work .grid {
    margin-top: -6px;
  }
}

.work-tabs {
  text-align: center;
  margin: 6px 0 -6px;
}
@media only screen and (min-width: 768px) {
  .work-tabs {
    display: none;
  }
}
.work-tabs a {
  position: relative;
  display: inline-block;
  padding: 8px 15px;
  font-size: 14px;
  line-height: 1;
  letter-spacing: -0.01em;
  color: #aeafbd;
}
.work-tabs a:before {
  content: "";
  position: absolute;
  top: 11px;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background: #aeafbd;
}
.work-tabs a:before {
  left: -4px;
}
.work-tabs a:first-child {
  padding-left: 0;
}
.work-tabs a:first-child:before {
  display: none;
}
.work-tabs a:last-child {
  padding-right: 0;
}
.work-tabs a:hover, .work-tabs a.active {
  color: #4b4b59;
}

@media only screen and (min-width: 1024px) {
  .body--work.state--animating.state--loading .grid {
    opacity: 0;
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
  }
  .body--work.state--animating .grid {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--work .column.fadein--animating {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--work .column.fadein--animating.fadein {
    opacity: 0;
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
    pointer-events: none;
  }
}
@media only screen and (min-width: 768px) {
  .body--news .menu li a.active:after, .body--news .menu li span.active:after {
    background: white;
  }
}
.body--news .about-header {
  padding: 100px 0 66px;
  background: #fdbe47;
}
@media only screen and (min-width: 768px) {
  .body--news .about-header {
    padding: 112px 0 118px;
  }
}
@media only screen and (min-width: 1280px) {
  .body--news .about-header {
    padding: 132px 0 181px;
  }
}
.body--news .grid {
  margin-top: -32px;
}
@media only screen and (min-width: 768px) {
  .body--news .grid {
    margin-top: -64px;
  }
}
@media only screen and (min-width: 1280px) {
  .body--news .grid {
    margin-top: -96px;
  }
}
.body--news .grid--news-more {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .body--news .grid--news-more {
    margin-top: 0;
  }
}
.body--news .grid--news-more--on {
  display: block;
}
.body--news .news-grid {
  display: grid;
  row-gap: 40px;
  padding: 0 8px;
}
@media only screen and (min-width: 768px) {
  .body--news .news-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 32px;
    row-gap: 48px;
    padding: 0 16px;
  }
}
@media only screen and (min-width: 1280px) {
  .body--news .news-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 56px;
  }
}
.body--news .news-grid .column {
  width: 100%;
  padding: 0;
}
.body--news .news-grid .grid-item {
  margin-top: 0;
}
.body--news .news-grid .grid-item__media {
  padding-bottom: 100%;
}
.body--news .news-grid .grid-item__details h3 span {
  margin-left: 0;
  font-size: 14px;
}
.body--news .news-grid .grid-item__details h2 {
  line-height: 1.2;
  font-size: 20px;
  margin-top: 6px;
}
.body--news .grid-item__details {
  margin-top: 16px;
}
@media only screen and (min-width: 768px) {
  .body--news .grid-item__details {
    margin-top: 20px;
  }
}
.body--news .grid-item__details p {
  margin-top: 6px;
  font-size: 14px;
  color: #1b2026;
}

.news-load .button {
  display: block;
  margin: 28px auto 0;
}
@media only screen and (min-width: 768px) {
  .news-load .button {
    margin-top: 38px;
  }
}
@media only screen and (min-width: 1280px) {
  .news-load .button {
    margin-top: 58px;
  }
}

.state--loading-posts .news-load .button {
  background: #010209;
  color: #fff;
  pointer-events: none;
}

.state--all-posts-loaded .news-load .button {
  background: #aeafbd;
  color: #fff;
  pointer-events: none;
}

@media only screen and (min-width: 1024px) {
  .body--news.state--animating.state--loading .about-header h1,
  .body--news.state--animating.state--loading .about-header p {
    opacity: 0;
  }
  .body--news.state--animating.state--loading .grid {
    opacity: 0;
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
  }
  .body--news.state--animating .about-header h1 {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--news.state--animating .about-header p {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
  }
  .body--news.state--animating .grid {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
  }
  .body--news .column.fadein--animating {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--news .column.fadein--animating.fadein {
    opacity: 0;
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
    pointer-events: none;
  }
}
.post__header {
  text-align: center;
  margin-top: 42px;
}
@media only screen and (min-width: 768px) {
  .post__header {
    margin-top: 52px;
  }
}
@media only screen and (min-width: 1280px) {
  .post__header {
    margin-top: 64px;
  }
}
@media only screen and (min-width: 768px) {
  .post__header .wrap--wide {
    max-width: 768px;
  }
}
@media only screen and (min-width: 1024px) {
  .post__header .wrap--wide {
    max-width: 1024px;
  }
}
@media only screen and (min-width: 1280px) {
  .post__header .wrap--wide {
    max-width: 1280px;
  }
}
.post__header h1 {
  font-family: "ABC Maxi Round", sans-serif;
  text-transform: uppercase;
  line-height: 1;
  font-size: 40px;
  letter-spacing: -0.01em;
  text-wrap: balance;
}
@media only screen and (min-width: 768px) {
  .post__header h1 {
    font-size: 64px;
  }
}
@media only screen and (min-width: 1280px) {
  .post__header h1 {
    font-size: 96px;
  }
}
.post__header p {
  margin-top: 0;
  color: #aeafbd;
  font-weight: 600;
  font-size: 16px;
}
@media only screen and (min-width: 1280px) {
  .post__header p {
    font-size: 18px;
  }
}

.post-carousel .post-photo img {
  height: 240px;
}
@media only screen and (min-width: 768px) {
  .post-carousel .post-photo img {
    height: 360px;
  }
}

.block--text h2, .block--text h3 {
  font-family: "Instrument Serif", serif;
  line-height: 1.2;
  letter-spacing: 0;
}
.block--text h2 {
  font-size: 24px;
}
@media only screen and (min-width: 768px) {
  .block--text h2 {
    font-size: 32px;
  }
}
@media only screen and (min-width: 1280px) {
  .block--text h2 {
    font-size: 40px;
  }
}
.block--text h3 {
  font-size: 24px;
}
@media only screen and (min-width: 768px) {
  .block--text h3 {
    font-size: 28px;
  }
}
@media only screen and (min-width: 1280px) {
  .block--text h3 {
    font-size: 32px;
  }
}

@media only screen and (min-width: 1024px) {
  .body--article.state--animating.state--loading .post__header,
  .body--article.state--animating.state--loading .block {
    opacity: 0;
  }
  .body--article.state--animating.state--loading .block {
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
  }
  .body--article.state--animating .post__header {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--article.state--animating .block {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
  }
}
.body--case-studies .about-header {
  padding: 100px 0 66px;
  background: #1b2026;
}
@media only screen and (min-width: 768px) {
  .body--case-studies .about-header {
    padding: 112px 0 118px;
  }
}
@media only screen and (min-width: 1280px) {
  .body--case-studies .about-header {
    padding: 132px 0 181px;
  }
}
.body--case-studies .about-header__image img {
  mix-blend-mode: difference;
}
@media only screen and (min-width: 768px) {
  .body--case-studies .menu li a.active:after, .body--case-studies .menu li span.active:after {
    background: white;
  }
}
.body--case-studies .grid-item {
  margin-top: 40px;
}
@media only screen and (min-width: 768px) {
  .body--case-studies .grid-item {
    margin-top: 48px;
  }
}
@media only screen and (min-width: 1024px) {
  .body--case-studies .grid-item {
    margin-top: 64px;
  }
}
.body--case-studies .grid-item__media {
  height: auto;
  padding-bottom: unset;
}
.body--case-studies .grid-item__image {
  position: relative;
  top: unset;
  right: unset;
  bottom: unset;
  left: unset;
}
.body--case-studies .grid-item__image img {
  position: relative;
  height: unset;
  object-fit: unset;
}
.body--case-studies .grid-item__details {
  margin-top: 16px;
}
@media only screen and (min-width: 768px) {
  .body--case-studies .grid-item__details {
    margin-top: 20px;
  }
}
.body--case-studies .grid-item__details h3 {
  font-weight: 500;
}
.body--case-studies .grid-item__details p {
  margin-top: 6px;
  font-size: 14px;
  color: #1b2026;
}

.featured-case {
  margin-top: -32px;
}
@media only screen and (min-width: 768px) {
  .featured-case {
    margin-top: -64px;
  }
}
@media only screen and (min-width: 1280px) {
  .featured-case {
    margin-top: -96px;
  }
}
.featured-case .grid-item {
  margin-top: 0;
}

@media only screen and (min-width: 1024px) {
  .body--case-studies.state--animating.state--loading .about-header h1,
  .body--case-studies.state--animating.state--loading .about-header p {
    opacity: 0;
  }
  .body--case-studies.state--animating.state--loading .featured-case {
    opacity: 0;
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
  }
  .body--case-studies.state--animating .about-header h1 {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--case-studies.state--animating .about-header p {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
  }
  .body--case-studies.state--animating .featured-case {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
  }
  .body--case-studies .column.fadein--animating {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--case-studies .column.fadein--animating.fadein {
    opacity: 0;
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
    pointer-events: none;
  }
}
.body--case-study .grid-item__details h3 span {
  display: none;
}

.body--article .video__more {
  padding-bottom: 0 !important;
}

.article-credits {
  float: left;
  clear: both;
  width: 100%;
  margin-top: 42px;
}
@media only screen and (min-width: 768px) {
  .article-credits {
    margin-top: 52px;
  }
}
@media only screen and (min-width: 1280px) {
  .article-credits {
    margin-top: 64px;
  }
}

.block--credit {
  margin-top: 0;
}
.block--credit:last-child {
  padding-bottom: 0;
}

.expand__heading {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #1b2026;
  -webkit-transition: color 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: color 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: color 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: color 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: color 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  cursor: pointer;
}
.expand__heading h3 {
  color: currentColor;
}
.expand__heading svg {
  height: 22px;
  fill: currentColor;
  -webkit-transition: transform 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: transform 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: transform 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: transform 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: transform 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
.expand__heading:hover {
  color: #2049e7;
}
.expand__content {
  height: 0;
  -webkit-transition: height 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -moz-transition: height 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -ms-transition: height 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -o-transition: height 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  transition: height 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
}
.expand__content__inner {
  padding-bottom: 32px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1), visibility 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1), visibility 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1), visibility 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1), visibility 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1), visibility 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
.expand--open .expand__heading {
  color: #2049e7;
}
.expand--open .expand__heading svg {
  transform: scaleY(-1);
}
.expand--open .expand__content {
  -webkit-transition: height 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: height 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: height 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: height 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: height 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
.expand--open .expand__content__inner {
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s, visibility 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -moz-transition: opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s, visibility 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -ms-transition: opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s, visibility 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  -o-transition: opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s, visibility 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  transition: opacity 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s, visibility 0.25s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
}

.credits-list {
  margin-top: 16px;
}
@media only screen and (min-width: 1280px) {
  .credits-list {
    margin-top: 20px;
  }
}
.credits-list__item {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 16px;
  padding: 12px 0;
  border-top: 2px solid #1b2026;
  font-size: 16px;
}
.credits-list__item strong {
  grid-column: span 2;
  margin-top: 20px;
}
.credits-list__item:has(strong) {
  border-top: 0;
}

.awards-list {
  margin-top: 16px;
}
@media only screen and (min-width: 1280px) {
  .awards-list {
    margin-top: 20px;
  }
}
.awards-list__item {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 16px;
  padding: 12px 0;
  border-top: 2px solid #1b2026;
  font-size: 12px;
  min-height: 38px;
}
@media only screen and (min-width: 1024px) {
  .awards-list__item {
    font-size: 16px;
    min-height: 42px;
  }
}
.awards-list__item strong {
  margin-top: 20px;
  grid-column: span 3;
}
.awards-list__item:has(strong) {
  border-top: 0;
}

.publications-list {
  margin-top: 16px;
}
@media only screen and (min-width: 1280px) {
  .publications-list {
    margin-top: 20px;
  }
}
.publications-list p {
  margin-top: 0;
  line-height: 1.2;
}
.publications-list p a {
  display: block;
  padding: 12px 0;
  border-top: 2px solid #1b2026;
  text-decoration: none;
  font-size: 12px;
}
@media only screen and (min-width: 1024px) {
  .publications-list p a {
    font-size: 16px;
  }
}
.publications-list p a:hover {
  color: #e93c4c;
}
.publications-list p strong {
  display: block;
  padding: 12px 0;
  margin-top: 20px;
  font-size: 12px;
  font-weight: 700;
}
@media only screen and (min-width: 1024px) {
  .publications-list p strong {
    font-size: 16px;
  }
}

.body--about .page {
  overflow: unset;
}
.body--about .page h2 {
  font-family: "Instrument Serif", serif;
  line-height: 1.2;
  letter-spacing: 0;
  font-size: 24px;
}
@media only screen and (min-width: 768px) {
  .body--about .page h2 {
    font-size: 32px;
  }
}
@media only screen and (min-width: 1280px) {
  .body--about .page h2 {
    font-size: 40px;
  }
}
.body--about .footer {
  margin-top: 0;
}
@media only screen and (min-width: 768px) {
  .body--about .menu li a.active:after, .body--about .menu li span.active:after {
    background: white;
  }
}

.about-header {
  background: #2049e7;
  text-align: center;
  padding: 96px 0 64px;
}
@media only screen and (min-width: 768px) {
  .about-header {
    padding: 128px 0 96px;
  }
}
.about-header__image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.about-header__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(100);
  opacity: 0.2;
  mix-blend-mode: multiply;
}
.about-header h1 {
  font-family: "ABC Maxi Round", sans-serif;
  text-transform: uppercase;
  line-height: 1;
  font-size: 40px;
  letter-spacing: -0.01em;
  text-wrap: balance;
  color: white;
}
@media only screen and (min-width: 768px) {
  .about-header h1 {
    font-size: 64px;
  }
}
@media only screen and (min-width: 1280px) {
  .about-header h1 {
    font-size: 96px;
  }
}
.about-header p {
  font-family: "Instrument Serif", serif;
  font-size: 24px;
  line-height: 1.2;
  letter-spacing: 0;
  color: white;
  text-wrap: balance;
}
@media only screen and (min-width: 768px) {
  .about-header p {
    font-size: 28px;
  }
}
@media only screen and (min-width: 1280px) {
  .about-header p {
    font-size: 32px;
  }
}

.about-intro {
  padding: 64px 0;
}
@media only screen and (min-width: 768px) {
  .about-intro {
    padding: 96px 0;
  }
}
.about-intro .wrap {
  display: grid;
  row-gap: 40px;
  column-gap: 40px;
  align-items: center;
}
@media only screen and (min-width: 1024px) {
  .about-intro .wrap {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
}
.about-intro .wrap:after {
  content: unset;
}
.about-intro__image {
  aspect-ratio: 5/4;
  border-radius: 16px;
  overflow: hidden;
  background: #aeafbd;
}
@media only screen and (min-width: 1024px) {
  .about-intro__image {
    grid-column: span 6;
  }
}
.about-intro__image img,
.about-intro__image video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.about-intro__text h2 {
  text-wrap: balance;
}
.about-intro__text p {
  text-wrap: pretty;
}
@media only screen and (min-width: 1024px) {
  .about-intro__text {
    grid-column: span 6;
  }
}
.about-intro--how .about-intro__text p:first-child {
  color: #2049e7;
  font-size: 14px;
  margin-bottom: 16px;
  font-weight: 600;
}
@media only screen and (min-width: 1024px) {
  .about-intro--how .about-intro__text {
    padding-left: 32px;
  }
}
.about-intro--craft {
  background: #f5f5f7;
}
@media only screen and (min-width: 1024px) {
  .about-intro--craft .about-intro__text {
    grid-column: span 7;
  }
}
.about-intro--craft .about-intro__headline h2 {
  text-wrap: balance;
}
.about-intro--craft .about-intro__headline p:first-child {
  color: #2049e7;
  font-size: 14px;
  margin-bottom: 16px;
  font-weight: 600;
}
@media only screen and (min-width: 1024px) {
  .about-intro--craft .about-intro__headline {
    grid-column: span 5;
  }
}

.about-awards {
  padding: 64px 0;
}
@media only screen and (min-width: 768px) {
  .about-awards {
    padding: 96px 0;
  }
}
.about-awards .wrap {
  display: grid;
  row-gap: 40px;
  column-gap: 64px;
}
@media only screen and (min-width: 1024px) {
  .about-awards .wrap {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}
.about-awards .wrap:after {
  content: unset;
}
.about-awards__content h2 {
  text-wrap: balance;
}
.about-awards__content h2:not(:first-child) {
  margin-top: 20px;
}
@media only screen and (min-width: 1024px) {
  .about-awards__content {
    grid-column: span 4;
  }
}
@media only screen and (min-width: 1024px) {
  .about-awards__loop {
    grid-column: span 2;
  }
}
.about-awards__loop__sticky {
  aspect-ratio: 1/1;
  border-radius: 16px;
  overflow: hidden;
}
.about-awards__loop__sticky video {
  width: 99%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 1024px) {
  .state--awards-open .about-awards__loop__sticky, .state--publications-open .about-awards__loop__sticky {
    position: sticky;
    top: 82px;
  }
}
.about-awards__buttons {
  margin: 26px 0 0;
  position: sticky;
  top: 82px;
  display: flex;
  flex-flow: wrap;
  gap: 16px;
}
.about-awards__button svg {
  -webkit-transition: transform 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: transform 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: transform 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: transform 0.25s cubic-bezier(0.2, 0.3, 0, 1);
  transition: transform 0.25s cubic-bezier(0.2, 0.3, 0, 1);
}
@media only screen and (max-width: 767px) {
  .about-awards__button {
    padding: 10px 16px;
    font-size: 12px;
  }
  .about-awards__button svg {
    vertical-align: bottom;
    height: 12px;
  }
}
.state--awards-open .about-awards__button.js-all-awards {
  background: #1b2026;
}
.state--awards-open .about-awards__button.js-all-awards svg {
  transform: scaleY(-1);
}
.state--publications-open .about-awards__button.js-all-publications {
  background: #1b2026;
}
.state--publications-open .about-awards__button.js-all-publications svg {
  transform: scaleY(-1);
}
.about-awards .awards-list {
  display: none;
  margin-top: 24px;
}
@media only screen and (min-width: 1280px) {
  .about-awards .awards-list {
    margin-top: 32px;
  }
}
.state--awards-open .about-awards .awards-list {
  display: block;
}
.about-awards .publications-list {
  display: none;
  margin-top: 24px;
}
@media only screen and (min-width: 1280px) {
  .about-awards .publications-list {
    margin-top: 32px;
  }
}
.state--publications-open .about-awards .publications-list {
  display: block;
}
.about-clients {
  padding: 64px 0;
  background: #f5f5f7;
}
@media only screen and (min-width: 768px) {
  .about-clients {
    padding: 96px 0;
  }
}
.about-clients__text {
  text-align: center;
}
.about-clients__logos {
  display: grid;
  row-gap: 8px;
  column-gap: 24px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
@media only screen and (min-width: 768px) {
  .about-clients__logos {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
}
@media only screen and (min-width: 1280px) {
  .about-clients__logos {
    grid-template-columns: repeat(10, minmax(0, 1fr));
  }
}
.about-clients__logos .logo-item {
  aspect-ratio: 1/1;
  mix-blend-mode: multiply;
}
.about-clients__logos .logo-item img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

@media only screen and (min-width: 1024px) {
  .body--about.state--animating.state--loading .about-header h1,
  .body--about.state--animating.state--loading .about-header p {
    opacity: 0;
  }
  .body--about.state--animating.state--loading .about-intro {
    opacity: 0;
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
  }
  .body--about.state--animating .about-header h1 {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--about.state--animating .about-header p {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
  }
  .body--about.state--animating .about-intro {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
  }
}
.body--contact {
  background: #2049e7;
}
.body--contact .footer {
  margin-top: 0;
  padding-top: 0;
}
.body--contact .footer__cta {
  display: none;
}
@media only screen and (min-width: 768px) {
  .body--contact .menu li a.active:after, .body--contact .menu li span.active:after {
    background: white;
  }
}

.contact-header {
  padding: 186px 0 128px;
  text-align: center;
}
.contact-header h1 {
  font-family: "ABC Maxi Round", sans-serif;
  text-transform: uppercase;
  line-height: 1;
  font-size: 40px;
  letter-spacing: -0.01em;
  text-wrap: balance;
  color: white;
}
@media only screen and (min-width: 768px) {
  .contact-header h1 {
    font-size: 96px;
  }
}
.contact-header p {
  font-family: "Instrument Serif", serif;
  font-size: 22px;
  line-height: 1.2;
  letter-spacing: 0;
  color: white;
  text-wrap: balance;
}
.contact-header p a {
  color: white;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 5px;
  text-decoration-color: rgba(255, 255, 255, 0.4);
  -webkit-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -moz-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -ms-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  -o-transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
  transition: text-decoration-color 0.2s cubic-bezier(0.2, 0.3, 0, 1);
}
.contact-header p a:hover {
  text-decoration-color: white;
}
.contact-header p strong {
  font-weight: 600;
}

@media only screen and (min-width: 1024px) {
  .body--contact.state--animating.state--loading .contact-header h1,
  .body--contact.state--animating.state--loading .contact-header p {
    opacity: 0;
  }
  .body--contact.state--animating.state--loading .footer {
    opacity: 0;
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
  }
  .body--contact.state--animating .contact-header h1 {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--contact.state--animating .contact-header p {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.5s;
  }
  .body--contact.state--animating .footer {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 1s;
  }
}
@media only screen and (min-width: 768px) {
  .legal {
    margin-top: 22px;
  }
}
@media only screen and (min-width: 1280px) {
  .legal {
    margin-top: 42px;
  }
}
.legal h1 {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .legal .wrap {
    max-width: 644px;
  }
}
.legal .legal__content {
  margin-top: 12px;
}
@media only screen and (min-width: 768px) {
  .legal .legal__content {
    margin-top: 22px;
  }
}
@media only screen and (min-width: 1280px) {
  .legal .legal__content {
    margin-top: 32px;
  }
}
.legal .legal__content .centered {
  text-align: center;
}

@media only screen and (min-width: 1024px) {
  .body--legal.state--animating.state--loading .legal h1 {
    opacity: 0;
  }
  .body--legal.state--animating.state--loading .legal__content {
    opacity: 0;
    -moz-transform: translate(0, 26px);
    -o-transform: translate(0, 26px);
    -ms-transform: translate(0, 26px);
    -webkit-transform: translate(0, 26px);
    transform: translate(0, 26px);
  }
  .body--legal.state--animating .legal h1 {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1);
  }
  .body--legal.state--animating .legal__content {
    -webkit-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    -moz-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    -ms-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    -o-transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
    transition: all 1s cubic-bezier(0.2, 0.3, 0, 1) 0.25s;
  }
}