.c-btn,
.c-link,
.c-link--xl,
.c-link--lg,
.c-link--md {
  background: none;
  border: none;
  padding: 0;
  -webkit-appearance: none !important;
}
.o-list--none {
  list-style: none;
  margin: 0;
  padding: 0;
}
.c-btn,
.c-link,
.c-link--xl,
.c-link--lg,
.c-link--md {
  cursor: pointer;
}
.c-btn:hover,
.c-link:hover,
.c-link--xl:hover,
.c-link--lg:hover,
.c-link--md:hover {
  text-decoration: none;
}
.c-btn:active,
.c-link:active,
.c-link--xl:active,
.c-link--lg:active,
.c-link--md:active {
  outline: 0;
}
.o-wrapper--valign {
  font-size: 0;
}
.application,
.application *,
.header,
.header *,
.application:before,
.application *:before,
.header:before,
.header *:before,
.application:after,
.application *:after,
.header:after,
.header *:after {
  box-sizing: border-box;
}
html {
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  overflow-y: auto;
  overflow-x: hidden;
}
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -moz-font-feature-settings: "liga", "kern";
  text-rendering: optimizelegibility;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  overflow: hidden;
}
.application img,
.header img {
  -ms-interpolation-mode: bicubic;
}
.application h1,
.header h1,
.application h2,
.header h2,
.application h3,
.header h3,
.application h4,
.header h4,
.application h5,
.header h5,
.application h6,
.header h6,
.application p,
.header p {
  margin: 0;
}
.application a,
.header a {
  text-decoration: none;
}
.application figure,
.header figure {
  margin: 0;
}
.application figcaption,
.header figcaption {
  margin: 0;
}
.application blockquote,
.header blockquote {
  margin: 0;
}
@font-face {
  font-family: 'SegoeUI-Light';
  src: url("../fonts/segoe-light.eot");
  src: url("../fonts/segoe-light.eot?#iefix") format('embedded-opentype'), url("../fonts/segoe-light.woff2") format('woff2'), url("../fonts/segoe-light.woff") format('woff'), url("../fonts/segoe-light.ttf") format('truetype'), url("../fonts/segoe-light.svg#segoe-light") format('svg');
  font-weight: 100;
}
@font-face {
  font-family: 'SegoeUI-SemiLight';
  src: url("../fonts/segoe-semilight.eot");
  src: url("../fonts/segoe-semilight.eot?#iefix") format('embedded-opentype'), url("../fonts/segoe-semilight.woff2") format('woff2'), url("../fonts/segoe-semilight.woff") format('woff'), url("../fonts/segoe-semilight.ttf") format('truetype'), url("../fonts/segoe-semilight.svg#segoe-semilight") format('svg');
  font-weight: 200;
}
@font-face {
  font-family: 'SegoeUI';
  src: url("../fonts/segoe-regular.eot");
  src: url("../fonts/segoe-regular.eot?#iefix") format('embedded-opentype'), url("../fonts/segoe-regular.woff2") format('woff2'), url("../fonts/segoe-regular.woff") format('woff'), url("../fonts/segoe-regular.ttf") format('truetype'), url("../fonts/segoe-regular.svg#segoe-regular") format('svg');
  font-weight: normal;
}
@font-face {
  font-family: 'SegoeUI-SemiBold';
  src: url("../fonts/segoe-semibold.eot");
  src: url("../fonts/segoe-semibold.eot?#iefix") format('embedded-opentype'), url("../fonts/segoe-semibold.woff2") format('woff2'), url("../fonts/segoe-semibold.woff") format('woff'), url("../fonts/segoe-semibold.ttf") format('truetype'), url("../fonts/segoe-semibold.svg#segoe-semibold") format('svg');
  font-weight: 600;
}
.c-anim,
.c-anim--slide-y,
.c-anim--slide-x,
.c-anim--fade,
.c-anim--from-top,
.c-anim--from-right,
.c-anim--fade-from-right,
.c-anim--from-left {
  will-change: transform;
}
.c-anim--slide-y {
  will-change: opacity, transform;
  opacity: 0;
  transform: translateY(100%) translateZ(0);
  transition: all 0.7s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.is-next .c-anim--slide-y {
  transform: translateY(100%) translateZ(0);
  transition: all 0.7s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.is-active .c-anim--slide-y,
.c-anim--slide-y.is-active {
  transform: translateY(0px) translateZ(0);
  transition: all 1.2s cubic-bezier(0.43, 0.195, 0.02, 1);
  opacity: 1;
}
.is-prev .c-anim--slide-y {
  transform: translateY(-100%) translateZ(0);
  transition: all 0.7s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.c-anim--slide-x {
  will-change: opacity, transform;
  opacity: 0;
  transform: translateX(10vw) translateZ(0);
}
.is-next .c-anim--slide-x {
  transform: translateX(10vw) translateZ(0);
  transition: all 1s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.is-active .c-anim--slide-x,
.c-anim--slide-x.is-active {
  transform: translateX(0px) translateZ(0);
  transition: all 1s cubic-bezier(0.43, 0.195, 0.02, 1);
  opacity: 1;
}
.is-prev .c-anim--slide-x {
  transform: translateX(-10vw) translateZ(0);
  transition: all 1s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.c-anim--fade {
  will-change: opacity;
  opacity: 0;
  transition: all 0.8s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.is-active .c-anim--fade,
.c-anim--fade.is-active {
  transition: all 1.4s cubic-bezier(0.43, 0.195, 0.02, 1);
  opacity: 1;
}
.c-anim--from-top {
  will-change: transform;
  transform: translateY(-100%) translateZ(0);
  transition: all 0.8s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.is-active .c-anim--from-top,
.c-anim--from-top.is-active {
  transform: translateY(0px) translateZ(0);
  transition: all 0.8s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.c-anim--from-right {
  will-change: transform;
  transform: translateX(100%) translateZ(0);
  transition: all 0.8s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.is-active .c-anim--from-right,
.c-anim--from-right.is-active {
  transform: translateX(0px) translateZ(0);
  transition: all 0.8s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.c-anim--fade-from-right {
  opacity: 0;
  will-change: transform;
  transform: translateX(100%) translateZ(0);
  transition: all 0.8s cubic-bezier(0.82, 0.01, 0.05, 1);
}
.is-active .c-anim--fade-from-right,
.c-anim--fade-from-right.is-active {
  opacity: 1;
  transform: translateX(0px) translateZ(0);
  transition: all 1.4s cubic-bezier(0.58, 0, 0.05, 1);
}
.c-anim--from-left {
  opacity: 0;
  will-change: transform;
  transform: translateX(-100%) translateZ(0);
  transition: all 0.8s cubic-bezier(0.82, 0.01, 0.05, 1);
}
.is-active .c-anim--from-left,
.c-anim--from-left.is-active {
  opacity: 1;
  transform: translateX(0px) translateZ(0);
  transition: all 1.4s cubic-bezier(0.58, 0, 0.05, 1);
}
.c-anim--scale-out {
  opacity: 0;
  will-change: transform;
  transform: scale(1.2) translateZ(0);
  transition: all 0.8s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.is-active .c-anim--scale-out,
.c-anim--scale-out.is-active {
  opacity: 1;
  transform: translateZ(0);
  transition: all 1.4s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.c-anim--scale-in {
  opacity: 0;
  will-change: transform;
  transform: scale(0.9) translateZ(0);
  transition: all 0.8s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.is-active .c-anim--scale-in,
.c-anim--scale-in.is-active {
  opacity: 1;
  transform: scale(1) translateZ(0);
  transition: all 1.4s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.c-anim--slide-right {
  will-change: transform;
  transform: translateX(-100%) translateZ(0);
  transition: all 0.8s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.is-active .c-anim--slide-right,
.c-anim--slide-right.is-active {
  transform: translateZ(0);
  transition: all 1.8s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.c-anim--slide-left {
  will-change: transform;
  transform: translateX(95%) translateZ(0);
  transition: all 0.8s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.is-active .c-anim--slide-left,
.c-anim--slide-left.is-active {
  transform: translateZ(0);
  transition: all 1.8s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.c-anim--0,
.is-active .c-anim--0,
.c-anim--0.is-active {
  transition-delay: 0s;
}
.is-next .c-anim--0,
.is-prev .c-anim--0 {
  transition-delay: 0s;
}
.c-anim--1,
.is-active .c-anim--1,
.c-anim--1.is-active {
  transition-delay: 0.08s;
}
.is-next .c-anim--1,
.is-prev .c-anim--1 {
  transition-delay: 0.07s;
}
.c-anim--2,
.is-active .c-anim--2,
.c-anim--2.is-active {
  transition-delay: 0.16s;
}
.is-next .c-anim--2,
.is-prev .c-anim--2 {
  transition-delay: 0.14s;
}
.c-anim--3,
.is-active .c-anim--3,
.c-anim--3.is-active {
  transition-delay: 0.24s;
}
.is-next .c-anim--3,
.is-prev .c-anim--3 {
  transition-delay: 0.21s;
}
.c-anim--4,
.is-active .c-anim--4,
.c-anim--4.is-active {
  transition-delay: 0.32s;
}
.is-next .c-anim--4,
.is-prev .c-anim--4 {
  transition-delay: 0.28s;
}
.c-anim--5,
.is-active .c-anim--5,
.c-anim--5.is-active {
  transition-delay: 0.4s;
}
.is-next .c-anim--5,
.is-prev .c-anim--5 {
  transition-delay: 0.35s;
}
.c-anim--6,
.is-active .c-anim--6,
.c-anim--6.is-active {
  transition-delay: 0.48s;
}
.is-next .c-anim--6,
.is-prev .c-anim--6 {
  transition-delay: 0.42s;
}
.c-anim--7,
.is-active .c-anim--7,
.c-anim--7.is-active {
  transition-delay: 0.56s;
}
.is-next .c-anim--7,
.is-prev .c-anim--7 {
  transition-delay: 0.49s;
}
.c-anim--8,
.is-active .c-anim--8,
.c-anim--8.is-active {
  transition-delay: 0.64s;
}
.is-next .c-anim--8,
.is-prev .c-anim--8 {
  transition-delay: 0.56s;
}
.c-anim--9,
.is-active .c-anim--9,
.c-anim--9.is-active {
  transition-delay: 0.72s;
}
.is-next .c-anim--9,
.is-prev .c-anim--9 {
  transition-delay: 0.63s;
}
.c-anim--10,
.is-active .c-anim--10,
.c-anim--10.is-active {
  transition-delay: 0.8s;
}
.is-next .c-anim--10,
.is-prev .c-anim--10 {
  transition-delay: 0.7s;
}
.c-btn {
  text-decoration: none;
  outline: none !important;
}
.c-footer {
  list-style: none;
  position: relative;
  width: 100%;
  text-align: center;
  font-weight: 100;
  background: #f5f5f5;
  margin: 0;
  padding: 5vh 0;
}
.c-footer ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.c-footer li {
  padding: 0 15px;
  margin-bottom: 9px;
  display: inline-block;
}
@media all and (max-width: 767px) {
  .c-footer li {
    margin-bottom: 15px;
    padding: 0 10px;
  }
  .c-footer li:last-child {
    display: block;
    padding-top: 25px;
  }
}
.c-footer a,
.c-footer span {
  display: inline-block;
  color: #000;
  font-weight: 100;
}
.header {
  position: fixed;
  top: 0;
  left: 0;
  font-size: 0;
  padding: 0 3vw;
  padding-top: 2vh;
  padding-bottom: 2vh;
  width: 100%;
  z-index: 10000000;
  background: #fff;
  box-shadow: 0px 10px 10px rgba(0,0,0,0.03);
  transform: translateY(-100%) translateZ(0);
  transition: all 0.7s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.header.is-active {
  transform: translateY(0%) translateZ(0);
}
.header__logo {
  width: 25px;
  height: 25px;
  display: inline-block;
  margin-right: 14px;
}
.header__content {
  width: 100%;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
}
.header__left-block,
.header__right-block {
  text-align: left;
  display: inline-block;
  white-space: nowrap;
}
@media all and (max-width: 767px) {
  .header__right-block {
    width: 100%;
  }
  .header__right-block:after {
    content: "";
    display: inline-block;
    height: 100%;
    width: 0;
    vertical-align: middle;
  }
}
.c-link,
.c-link--xl,
.c-link--lg,
.c-link--md {
  text-decoration: none;
  text-decoration: none;
  outline: none !important;
  font-weight: normal;
  font-family: 'SegoeUI';
  color: #000;
  opacity: 0.77;
  font-size: calc(16px + (19 - 16) * (100vw - 320px) / (1920 - 320));
}
.c-link--xl {
  font-size: 24px;
  line-height: 30px;
}
.c-link--lg {
  font-size: calc(11px + (21 - 11) * (100vw - 320px) / (1920 - 320));
  line-height: calc(13px + (26 - 13) * (100vw - 320px) / (1920 - 320));
}
.c-link--md {
  font-size: calc(12px + (14 - 12) * (100vw - 320px) / (1920 - 320));
  line-height: calc(14px + (17 - 14) * (100vw - 320px) / (1920 - 320));
  letter-spacing: calc(1px + (2 - 1) * (100vw - 320px) / (1920 - 320));
}
.c-link--underline {
  display: inline-block;
  position: relative;
}
.c-link--underline:before,
.c-link--underline:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -0.1em;
  width: 100%;
  height: 1px;
  background: #000;
}
.c-link--underline.u-color--white:before,
.c-link--underline.u-color--white:after {
  background: #fff;
}
.c-link--underline:before {
  transform: scaleX(0) translateZ(0);
  transform-origin: 0 0;
  transition: all 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.c-link--underline:after {
  transform: scaleX(1) translateZ(0);
  transform-origin: 100% 0;
  transition: all 0.3s 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.c-link--underline:hover,
.c-link--underline.is-active {
  opacity: 1;
}
.c-link--underline:hover:before,
.c-link--underline.is-active:before {
  transform: scaleX(1) translateZ(0);
  transition: all 0.3s 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.c-link--underline:hover:after,
.c-link--underline.is-active:after {
  transform: scaleX(0) translateZ(0);
  transition: all 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.c-link--social svg {
  height: 18px;
  width: 18px;
  transition: all 0.4s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.is-dark .c-link--social svg {
  fill: #fff;
}
.is-light .c-link--social svg {
  fill: #777;
}
.is-dark .c-link--social:hover svg {
  fill: #fff;
}
.is-light .c-link--social:hover svg {
  fill: #000;
}
.c-overlay {
  transition: opacity 1.4s cubic-bezier(0.43, 0.195, 0.02, 1);
  opacity: 0;
  pointer-events: none;
}
.c-overlay.is-active,
.c-overlay.is-overlay-active {
  transition: opacity 1.4s cubic-bezier(0.43, 0.195, 0.02, 1);
  opacity: 1;
  pointer-events: auto;
}
.c-text b,
.c-text--xl b,
.c-text--lg b,
.c-text--md b,
.c-text--sm b,
.c-text strong,
.c-text--xl strong,
.c-text--lg strong,
.c-text--md strong,
.c-text--sm strong,
.c-text.u-bold,
.c-text--xl.u-bold,
.c-text--lg.u-bold,
.c-text--md.u-bold,
.c-text--sm.u-bold {
  font-weight: bold;
}
.c-text--xl {
  font-weight: 400;
  font-size: calc(40px + (55 - 40) * (100vw - 320px) / (1920 - 320));
  line-height: 1;
}
.c-text--lg {
  font-weight: 100;
  font-size: calc(18px + (25 - 18) * (100vw - 320px) / (1920 - 320));
  line-height: 2;
}
.c-text--md {
  font-weight: 100;
  font-size: calc(16px + (25 - 16) * (100vw - 320px) / (1920 - 320));
  line-height: 1.45;
}
@media all and (max-width: 767px) {
  .c-text--md {
    line-height: 1.45;
  }
}
.c-text--sm {
  font-weight: normal;
  font-size: calc(11px + (16 - 11) * (100vw - 320px) / (1920 - 320));
  line-height: 1.5;
}
.main {
  min-height: 100vh;
  display: block;
  position: relative;
}
.social-nav {
  vertical-align: middle;
  text-align: right;
}
.tile-wrapper,
.tile-wrapper--small {
  position: relative;
  font-size: 0;
  padding-bottom: 7vh;
}
@media screen and (max-width: 700px) {
  .tile-wrapper,
  .tile-wrapper--small {
    padding-top: 5vh;
  }
}
.tile-wrapper--small {
  background: #f5f5f5;
  text-align: left;
  padding: 2vh 3.6vw;
}
@media screen and (max-width: 700px) {
  .tile-wrapper--small {
    padding: 2vh 3.6vw;
  }
}
.tile {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  padding: 0 3.6vw;
  margin-top: 5vh;
  text-align: left;
  margin-bottom: 5vh;
  width: 33.333333333333336%;
}
.tile.is-wide {
  width: 58%;
}
.tile.is-small {
  vertical-align: top;
  width: 25%;
  padding: 0;
  margin-bottom: 3vh;
}
.tile.is-small:before {
  content: "";
  display: block;
  padding-top: 150%;
  overflow: hidden;
}
.tile.is-small .tile__content {
  position: relative;
  display: inline-block;
  padding: 25px;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  transform: translateY(0%) translateZ(0);
  transition: all 0.6s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.tile.is-small .tile__content:before {
  box-shadow: 0 0 10px rgba(0,0,0,0.06);
  content: "";
  display: block;
  background: #fff;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 0;
  transition: all 0.6s cubic-bezier(0.43, 0.195, 0.02, 1);
}
@media screen and (max-width: 1023px) {
  .tile.is-small .tile__content .tile__title {
    padding: 0px;
  }
}
.tile.is-small:hover .tile__content:before {
  opacity: 1;
}
.tile.is-small.is-wide {
  width: 50%;
}
.tile.is-small.is-wide:before {
  padding-top: 75%;
}
@media screen and (max-width: 1420px) {
  .tile.is-small .tile__content {
    padding: 15px;
  }
}
@media screen and (max-width: 1280px) {
  .tile.is-small:before {
    padding-top: 170%;
  }
  .tile.is-small.is-wide:before {
    padding-top: 85%;
  }
  .tile.is-wide:before {
    padding-top: 85%;
  }
}
@media screen and (max-width: 1023px) {
  .tile,
  .tile.is-wide {
    width: 50%;
  }
  .tile.is-small {
    width: 50%;
  }
  .tile.is-small:before {
    padding-top: 105%;
  }
  .tile.is-small.is-wide {
    width: 50%;
  }
  .tile.is-small.is-wide:before {
    padding-top: 105%;
  }
}
@media screen and (max-width: 700px) {
  .tile {
    margin-top: 0;
    margin-bottom: 30px;
  }
  .tile,
  .tile.is-wide {
    width: 100%;
  }
  .tile:before,
  .tile.is-wide:before {
    padding-top: 170%;
  }
  .tile.is-wide:before {
    padding-top: 170%;
  }
  .tile.is-small {
    margin-top: 0;
  }
  .tile.is-small:before {
    padding-top: 170%;
  }
  .tile.is-small.is-wide:before {
    padding-top: 170%;
  }
  .tile.is-small .tile__content {
    padding: 6px;
  }
}
.tile__img-wrapper {
  overflow: hidden;
  display: inline-block;
  margin-bottom: 23px;
  width: 100%;
}
.tile__img-wrapper.is-large {
  opacity: 0;
  will-change: transform;
  transform: scale(0.9) translateZ(0);
  transition: all 0.65s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.is-active .tile__img-wrapper.is-large,
.tile__img-wrapper.is-large.is-active {
  opacity: 1;
  transform: translateZ(0);
}
.tile:hover .tile__img-wrapper.is-large,
.tile.is-active:hover .tile__img-wrapper.is-large {
  transform: scale(0.95) translateZ(0);
  transition: all 0.5s cubic-bezier(0.43, 0.195, 0.02, 1);
}
@media screen and (max-width: 700px) {
  .tile__img-wrapper.is-large {
    transform: scale(1) translateZ(0);
    opacity: 1;
  }
}
.tile__title {
  position: relative;
  font-weight: 400;
  font-family: 'SegoeUI';
  font-weight: normal;
}
.tile__title span {
  position: relative;
  color: #000;
  display: inline;
  font-size: calc(20px + (30 - 20) * (100vw - 320px) / (1920 - 320));
  line-height: 1.433333333333333;
}
.is-small .tile__title span {
  font-size: calc(13px + (26 - 13) * (100vw - 320px) / (1920 - 320));
  line-height: 1.346153846153846;
}
@media screen and (max-width: 1023px) {
  .tile__title {
    padding: 0 5px;
  }
}
@media screen and (max-width: 700px) {
  .tile__title {
    opacity: 1;
  }
}
.tile__description {
  position: relative;
  font-family: 'SegoeUI-Light';
  font-weight: 100;
}
.is-small .tile__description {
  font-size: calc(12px + (20 - 12) * (100vw - 320px) / (1920 - 320));
  line-height: 1.346153846153846;
}
.tile__tag {
  position: absolute;
  display: block;
  font-size: calc(10px + (12 - 10) * (100vw - 320px) / (1920 - 320));
  right: 25px;
  width: auto;
  left: 25px;
  bottom: 25px;
  color: #000;
  font-family: 'SegoeUI';
  font-weight: 100;
}
.tile__tag:after {
  margin-top: 8px;
  content: "";
  width: 100%;
  display: block;
  height: 1px;
  background: #000;
}
@media screen and (max-width: 1420px) {
  .tile__tag {
    right: 15px;
    width: auto;
    left: 15px;
    bottom: 15px;
  }
}
@media screen and (max-width: 700px) {
  .tile__tag {
    right: 6px;
    width: auto;
    left: 6px;
    bottom: 8px;
  }
}
.tile__figure {
  width: 100%;
  position: relative;
}
.tile__cover {
  width: 100%;
  position: relative;
  overflow: hidden;
  position: relative;
  background-size: cover;
  opacity: 0;
  will-change: transform;
  transform: scale(1.2) translateZ(0);
  transition: all 0.8s cubic-bezier(0.43, 0.195, 0.02, 1);
}
.tile__cover:after {
  padding-top: 70%;
  width: 100%;
  display: block;
  content: "";
}
.is-active .tile__cover {
  opacity: 1;
  transform: translateZ(0);
}
.tile:hover .tile__cover,
.tile.is-active:hover .tile__cover {
  transform: scale(1.1) translateZ(0);
}
.is-wide .tile__cover:after {
  padding-top: 53%;
}
@media screen and (max-width: 1023px) {
  .is-wide .tile__cover:after {
    padding-top: 70%;
  }
}
.o-wrapper--valign:after {
  content: "";
  display: inline-block;
  height: 100%;
  width: 0;
  vertical-align: middle;
}
.o-wrapper--valign.is-bottom:after {
  vertical-align: bottom;
}
.o-wrapper--valign.is-top:after {
  vertical-align: top;
}
@media all and (max-width: 767px) {
  .o-wrapper--valign\@sm {
    font-size: 0;
  }
  .o-wrapper--valign\@sm:after {
    content: "";
    display: inline-block;
    height: 100%;
    width: 0;
    vertical-align: middle;
  }
  .o-wrapper--valign\@sm.is-bottom:after {
    vertical-align: bottom;
  }
  .o-wrapper--valign\@sm.is-top:after {
    vertical-align: top;
  }
  .u-reset-valign\@sm:after {
    display: none;
  }
}
.c-uhff {
  margin-top: 0;
}
.u-vacuum {
  font-size: 0;
}
.u-align-center {
  text-align: center;
}
.u-align-right {
  text-align: right;
}
.u-align-left {
  text-align: left;
}
.u-text-justify {
  text-align: justify;
}
@media all and (max-width: 10000px) {
  .u-align-center\@default {
    text-align: center;
  }
  .u-align-right\@default {
    text-align: right;
  }
  .u-align-left\@default {
    text-align: left;
  }
  .u-text-justify\@default {
    text-align: justify;
  }
}
@media all and (max-width: 767px) {
  .u-align-center\@sm {
    text-align: center;
  }
  .u-align-right\@sm {
    text-align: right;
  }
  .u-align-left\@sm {
    text-align: left;
  }
  .u-text-justify\@sm {
    text-align: justify;
  }
}
@media screen and (max-width: 5000px) {
  .u-float-l {
    float: left;
  }
}
@media all and (max-width: 10000px) {
  .u-float-l\@default {
    float: left;
  }
}
@media all and (max-width: 767px) {
  .u-float-l\@sm {
    float: left;
  }
}
@media screen and (max-width: 5000px) {
  .u-float-r {
    float: right;
  }
}
@media all and (max-width: 10000px) {
  .u-float-r\@default {
    float: right;
  }
}
@media all and (max-width: 767px) {
  .u-float-r\@sm {
    float: right;
  }
}
.u-valign-top {
  vertical-align: top;
}
.u-valign-bottom {
  vertical-align: bottom;
}
.u-valign-middle {
  vertical-align: middle;
}
@media all and (max-width: 10000px) {
  .u-valign-top\@default {
    vertical-align: top;
  }
  .u-valign-bottom\@default {
    vertical-align: bottom;
  }
  .u-valign-middle\@default {
    vertical-align: middle;
  }
}
@media all and (max-width: 767px) {
  .u-valign-top\@sm {
    vertical-align: top;
  }
  .u-valign-bottom\@sm {
    vertical-align: bottom;
  }
  .u-valign-middle\@sm {
    vertical-align: middle;
  }
}
@media screen and (max-width: 5000px) {
  .u-underline {
    text-decoration: underline;
  }
}
@media all and (max-width: 10000px) {
  .u-underline\@default {
    text-decoration: underline;
  }
}
@media all and (max-width: 767px) {
  .u-underline\@sm {
    text-decoration: underline;
  }
}
@media screen and (max-width: 5000px) {
  .u-uppercase {
    text-transform: uppercase;
    letter-spacing: calc(1px + (1.5 - 1) * (100vw - 320px) / (1920 - 320));
  }
}
@media all and (max-width: 10000px) {
  .u-uppercase\@default {
    text-transform: uppercase;
    letter-spacing: calc(1px + (1.5 - 1) * (100vw - 320px) / (1920 - 320));
  }
}
@media all and (max-width: 767px) {
  .u-uppercase\@sm {
    text-transform: uppercase;
    letter-spacing: calc(1px + (1.5 - 1) * (100vw - 320px) / (1920 - 320));
  }
}
@media screen and (max-width: 5000px) {
  .u-capitalize {
    text-transform: capitalize;
  }
}
@media all and (max-width: 10000px) {
  .u-capitalize\@default {
    text-transform: capitalize;
  }
}
@media all and (max-width: 767px) {
  .u-capitalize\@sm {
    text-transform: capitalize;
  }
}
@media screen and (max-width: 5000px) {
  .u-lowercase {
    text-transform: lowercase;
  }
}
@media all and (max-width: 10000px) {
  .u-lowercase\@default {
    text-transform: lowercase;
  }
}
@media all and (max-width: 767px) {
  .u-lowercase\@sm {
    text-transform: lowercase;
  }
}
@media screen and (max-width: 5000px) {
  .u-bold {
    font-weight: bold;
  }
}
@media all and (max-width: 10000px) {
  .u-bold\@default {
    font-weight: bold;
  }
}
@media all and (max-width: 767px) {
  .u-bold\@sm {
    font-weight: bold;
  }
}
@media screen and (max-width: 5000px) {
  .u-regular {
    font-family: $font-regular;
  }
}
@media all and (max-width: 10000px) {
  .u-regular\@default {
    font-family: $font-regular;
  }
}
@media all and (max-width: 767px) {
  .u-regular\@sm {
    font-family: $font-regular;
  }
}
@media screen and (max-width: 5000px) {
  .u-italic {
    font-style: italic;
  }
}
@media all and (max-width: 10000px) {
  .u-italic\@default {
    font-style: italic;
  }
}
@media all and (max-width: 767px) {
  .u-italic\@sm {
    font-style: italic;
  }
}
.u-inline-block {
  display: inline-block;
}
.u-block {
  display: block;
}
.u-flex {
  display: -ms-flexbox;
  display: flex;
}
.u-hide {
  display: none;
}
@media all and (max-width: 10000px) {
  .u-inline-block\@default {
    display: inline-block;
  }
  .u-block\@default {
    display: block;
  }
  .u-hide\@default {
    display: none;
  }
}
@media all and (max-width: 767px) {
  .u-inline-block\@sm {
    display: inline-block;
  }
  .u-block\@sm {
    display: block;
  }
  .u-hide\@sm {
    display: none;
  }
}
@media screen and (max-width: 5000px) {
  .u-invisible {
    visibility: hidden;
  }
}
@media all and (max-width: 10000px) {
  .u-invisible\@default {
    visibility: hidden;
  }
}
@media all and (max-width: 767px) {
  .u-invisible\@sm {
    visibility: hidden;
  }
}
@media screen and (max-width: 5000px) {
  .u-overflow-h {
    overflow: hidden;
  }
}
@media all and (max-width: 10000px) {
  .u-overflow-h\@default {
    overflow: hidden;
  }
}
@media all and (max-width: 767px) {
  .u-overflow-h\@sm {
    overflow: hidden;
  }
}
@media screen and (max-width: 5000px) {
  .u-overflow-x-h {
    overflow-x: hidden;
  }
}
@media all and (max-width: 10000px) {
  .u-overflow-x-h\@default {
    overflow-x: hidden;
  }
}
@media all and (max-width: 767px) {
  .u-overflow-x-h\@sm {
    overflow-x: hidden;
  }
}
@media screen and (max-width: 5000px) {
  .u-overflow-y-h {
    overflow-y: hidden;
  }
}
@media all and (max-width: 10000px) {
  .u-overflow-y-h\@default {
    overflow-y: hidden;
  }
}
@media all and (max-width: 767px) {
  .u-overflow-y-h\@sm {
    overflow-y: hidden;
  }
}
@media screen and (max-width: 5000px) {
  .u-overflow-s {
    overflow: scroll;
  }
}
@media all and (max-width: 10000px) {
  .u-overflow-s\@default {
    overflow: scroll;
  }
}
@media all and (max-width: 767px) {
  .u-overflow-s\@sm {
    overflow: scroll;
  }
}
@media screen and (max-width: 5000px) {
  .u-fit {
    width: 100%;
    height: 100%;
  }
}
@media all and (max-width: 10000px) {
  .u-fit\@default {
    width: 100%;
    height: 100%;
  }
}
@media all and (max-width: 767px) {
  .u-fit\@sm {
    width: 100%;
    height: 100%;
  }
}
@media screen and (max-width: 5000px) {
  .u-fit-w {
    width: 100%;
  }
}
@media all and (max-width: 10000px) {
  .u-fit-w\@default {
    width: 100%;
  }
}
@media all and (max-width: 767px) {
  .u-fit-w\@sm {
    width: 100%;
  }
}
@media screen and (max-width: 5000px) {
  .u-fit-h {
    height: 100%;
  }
}
@media all and (max-width: 10000px) {
  .u-fit-h\@default {
    height: 100%;
  }
}
@media all and (max-width: 767px) {
  .u-fit-h\@sm {
    height: 100%;
  }
}
@media screen and (max-width: 5000px) {
  .u-viewport-fit {
    width: 100vw;
    height: 100vh;
  }
}
@media all and (max-width: 10000px) {
  .u-viewport-fit\@default {
    width: 100vw;
    height: 100vh;
  }
}
@media all and (max-width: 767px) {
  .u-viewport-fit\@sm {
    width: 100vw;
    height: 100vh;
  }
}
@media screen and (max-width: 5000px) {
  .u-viewport-fit-w {
    width: 100vw;
  }
}
@media all and (max-width: 10000px) {
  .u-viewport-fit-w\@default {
    width: 100vw;
  }
}
@media all and (max-width: 767px) {
  .u-viewport-fit-w\@sm {
    width: 100vw;
  }
}
@media screen and (max-width: 5000px) {
  .u-viewport-fit-h {
    height: 100vh;
  }
}
@media all and (max-width: 10000px) {
  .u-viewport-fit-h\@default {
    height: 100vh;
  }
}
@media all and (max-width: 767px) {
  .u-viewport-fit-h\@sm {
    height: 100vh;
  }
}
@media screen and (max-width: 5000px) {
  .u-height-auto {
    height: auto;
  }
}
@media all and (max-width: 10000px) {
  .u-height-auto\@default {
    height: auto;
  }
}
@media all and (max-width: 767px) {
  .u-height-auto\@sm {
    height: auto;
  }
}
.u-vacuum {
  line-height: 0;
}
.u-fixed {
  position: fixed;
  will-change: transform;
}
.u-absolute {
  position: absolute;
}
.u-relative {
  position: relative;
}
.u-static {
  position: static;
}
@media all and (max-width: 10000px) {
  .u-fixed\@default {
    position: fixed;
    will-change: transform;
  }
  .u-absolute\@default {
    position: absolute;
  }
  .u-relative\@default {
    position: relative;
  }
  .u-static\@default {
    position: static;
  }
}
@media all and (max-width: 767px) {
  .u-fixed\@sm {
    position: fixed;
    will-change: transform;
  }
  .u-absolute\@sm {
    position: absolute;
  }
  .u-relative\@sm {
    position: relative;
  }
  .u-static\@sm {
    position: static;
  }
}
.u-pos-tl {
  top: 0;
  left: 0;
  right: auto;
  bottom: auto;
}
.u-pos-tr {
  top: 0;
  right: 0;
  left: auto;
  bottom: auto;
}
.u-pos-bl {
  bottom: 0;
  left: 0;
  top: auto;
  right: auto;
}
.u-pos-br {
  bottom: 0;
  right: 0;
  left: auto;
  top: auto;
}
@media all and (max-width: 10000px) {
  .u-pos-tl\@default {
    top: 0;
    left: 0;
    right: auto;
    bottom: auto;
  }
  .u-pos-tr\@default {
    top: 0;
    right: 0;
    left: auto;
    bottom: auto;
  }
  .u-pos-bl\@default {
    bottom: 0;
    left: 0;
    top: auto;
    right: auto;
  }
  .u-pos-br\@default {
    bottom: 0;
    right: 0;
    left: auto;
    top: auto;
  }
}
@media all and (max-width: 767px) {
  .u-pos-tl\@sm {
    top: 0;
    left: 0;
    right: auto;
    bottom: auto;
  }
  .u-pos-tr\@sm {
    top: 0;
    right: 0;
    left: auto;
    bottom: auto;
  }
  .u-pos-bl\@sm {
    bottom: 0;
    left: 0;
    top: auto;
    right: auto;
  }
  .u-pos-br\@sm {
    bottom: 0;
    right: 0;
    left: auto;
    top: auto;
  }
}
@media screen and (max-width: 5000px) {
  .u-cursor-drag {
    cursor: grab;
  }
}
@media all and (max-width: 10000px) {
  .u-cursor-drag\@default {
    cursor: grab;
  }
}
@media all and (max-width: 767px) {
  .u-cursor-drag\@sm {
    cursor: grab;
  }
}
@media screen and (max-width: 5000px) {
  .u-cursor-pointer {
    cursor: pointer;
  }
}
@media all and (max-width: 10000px) {
  .u-cursor-pointer\@default {
    cursor: pointer;
  }
}
@media all and (max-width: 767px) {
  .u-cursor-pointer\@sm {
    cursor: pointer;
  }
}
@media screen and (max-width: 5000px) {
  .u-cover {
    background-size: cover;
  }
}
@media all and (max-width: 10000px) {
  .u-cover\@default {
    background-size: cover;
  }
}
@media all and (max-width: 767px) {
  .u-cover\@sm {
    background-size: cover;
  }
}
@media screen and (max-width: 5000px) {
  .u-contain {
    background-size: contain;
  }
}
@media all and (max-width: 10000px) {
  .u-contain\@default {
    background-size: contain;
  }
}
@media all and (max-width: 767px) {
  .u-contain\@sm {
    background-size: contain;
  }
}
@media screen and (max-width: 5000px) {
  .u-pointer-none,
  .u-pointer-none * {
    pointer-events: none;
  }
}
@media all and (max-width: 10000px) {
  .u-pointer-none\@default,
  .u-pointer-none\@default * {
    pointer-events: none;
  }
}
@media all and (max-width: 767px) {
  .u-pointer-none\@sm,
  .u-pointer-none\@sm * {
    pointer-events: none;
  }
}
@media screen and (max-width: 5000px) {
  .u-pointer-auto,
  .u-pointer-auto * {
    pointer-events: auto;
  }
}
@media all and (max-width: 10000px) {
  .u-pointer-auto\@default,
  .u-pointer-auto\@default * {
    pointer-events: auto;
  }
}
@media all and (max-width: 767px) {
  .u-pointer-auto\@sm,
  .u-pointer-auto\@sm * {
    pointer-events: auto;
  }
}
@media screen and (max-width: 5000px) {
  .u-object-fit-cover {
    object-fit: cover;
  }
}
@media all and (max-width: 10000px) {
  .u-object-fit-cover\@default {
    object-fit: cover;
  }
}
@media all and (max-width: 767px) {
  .u-object-fit-cover\@sm {
    object-fit: cover;
  }
}
@media screen and (max-width: 5000px) {
  .u-object-fit-contain {
    object-fit: contain;
  }
}
@media all and (max-width: 10000px) {
  .u-object-fit-contain\@default {
    object-fit: contain;
  }
}
@media all and (max-width: 767px) {
  .u-object-fit-contain\@sm {
    object-fit: contain;
  }
}
@media screen and (max-width: 5000px) {
  .u-force-inline {
    white-space: nowrap;
  }
}
@media all and (max-width: 10000px) {
  .u-force-inline\@default {
    white-space: nowrap;
  }
}
@media all and (max-width: 767px) {
  .u-force-inline\@sm {
    white-space: nowrap;
  }
}
@media screen and (max-width: 5000px) {
  .u-force-block {
    white-space: normal;
  }
}
@media all and (max-width: 10000px) {
  .u-force-block\@default {
    white-space: normal;
  }
}
@media all and (max-width: 767px) {
  .u-force-block\@sm {
    white-space: normal;
  }
}
@media screen and (max-width: 5000px) {
  .u-dir-rtl {
    direction: rtl;
  }
}
@media all and (max-width: 10000px) {
  .u-dir-rtl\@default {
    direction: rtl;
  }
}
@media all and (max-width: 767px) {
  .u-dir-rtl\@sm {
    direction: rtl;
  }
}
@media screen and (max-width: 5000px) {
  .u-dir-ltr {
    direction: ltr;
  }
}
@media all and (max-width: 10000px) {
  .u-dir-ltr\@default {
    direction: ltr;
  }
}
@media all and (max-width: 767px) {
  .u-dir-ltr\@sm {
    direction: ltr;
  }
}
@media screen and (max-width: 5000px) {
  .u-force-3d {
    transform: translateZ(0);
  }
}
@media all and (max-width: 10000px) {
  .u-force-3d\@default {
    transform: translateZ(0);
  }
}
@media all and (max-width: 767px) {
  .u-force-3d\@sm {
    transform: translateZ(0);
  }
}
@media screen and (max-width: 5000px) {
  .u-fix-repaint {
    background: rgba(255,255,255,0.01);
  }
}
@media all and (max-width: 10000px) {
  .u-fix-repaint\@default {
    background: rgba(255,255,255,0.01);
  }
}
@media all and (max-width: 767px) {
  .u-fix-repaint\@sm {
    background: rgba(255,255,255,0.01);
  }
}
@media screen and (max-width: 5000px) {
  .u-justify-space-between {
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
}
@media all and (max-width: 10000px) {
  .u-justify-space-between\@default {
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
}
@media all and (max-width: 767px) {
  .u-justify-space-between\@sm {
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
}
@media screen and (max-width: 5000px) {
  .u-justify-left {
    -ms-flex-pack: start;
        justify-content: flex-start;
  }
}
@media all and (max-width: 10000px) {
  .u-justify-left\@default {
    -ms-flex-pack: start;
        justify-content: flex-start;
  }
}
@media all and (max-width: 767px) {
  .u-justify-left\@sm {
    -ms-flex-pack: start;
        justify-content: flex-start;
  }
}
@media screen and (max-width: 5000px) {
  .u-justify-center {
    -ms-flex-pack: center;
        justify-content: center;
  }
}
@media all and (max-width: 10000px) {
  .u-justify-center\@default {
    -ms-flex-pack: center;
        justify-content: center;
  }
}
@media all and (max-width: 767px) {
  .u-justify-center\@sm {
    -ms-flex-pack: center;
        justify-content: center;
  }
}
@media screen and (max-width: 5000px) {
  .u-align-items-center {
    -ms-flex-align: center;
        align-items: center;
  }
}
@media all and (max-width: 10000px) {
  .u-align-items-center\@default {
    -ms-flex-align: center;
        align-items: center;
  }
}
@media all and (max-width: 767px) {
  .u-align-items-center\@sm {
    -ms-flex-align: center;
        align-items: center;
  }
}
@media screen and (max-width: 5000px) {
  .u-align-items-bottom {
    -ms-flex-align: end;
        align-items: flex-end;
  }
}
@media all and (max-width: 10000px) {
  .u-align-items-bottom\@default {
    -ms-flex-align: end;
        align-items: flex-end;
  }
}
@media all and (max-width: 767px) {
  .u-align-items-bottom\@sm {
    -ms-flex-align: end;
        align-items: flex-end;
  }
}
@media screen and (max-width: 5000px) {
  .u-direction-column-reverse {
    -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
  }
}
@media all and (max-width: 10000px) {
  .u-direction-column-reverse\@default {
    -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
  }
}
@media all and (max-width: 767px) {
  .u-direction-column-reverse\@sm {
    -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
  }
}
.u-push--up {
  transform: translateY(-100%) translateZ(0);
}
.u-push--down {
  transform: translateY(100%) translateZ(0);
}
@media all and (max-width: 10000px) {
  .u-push--up\@default {
    transform: translateY(-100%) translateZ(0);
  }
  .u-push--down\@default {
    transform: translateY(100%) translateZ(0);
  }
}
@media all and (max-width: 767px) {
  .u-push--up\@sm {
    transform: translateY(-100%) translateZ(0);
  }
  .u-push--down\@sm {
    transform: translateY(100%) translateZ(0);
  }
}
@media screen and (max-width: 5000px) {
  .is-hidden,
  .is-hidden * {
    visibility: hidden !important;
    transform: none !important;
    opacity: 0 !important;
    transition: none !important;
  }
}
@media all and (max-width: 10000px) {
  .is-hidden\@default,
  .is-hidden\@default * {
    visibility: hidden !important;
    transform: none !important;
    opacity: 0 !important;
    transition: none !important;
  }
}
@media all and (max-width: 767px) {
  .is-hidden\@sm,
  .is-hidden\@sm * {
    visibility: hidden !important;
    transform: none !important;
    opacity: 0 !important;
    transition: none !important;
  }
}
@media screen and (max-width: 5000px) {
  .u-align-middle {
    display: inline-block;
    vertical-align: middle;
  }
}
@media all and (max-width: 10000px) {
  .u-align-middle\@default {
    display: inline-block;
    vertical-align: middle;
  }
}
@media all and (max-width: 767px) {
  .u-align-middle\@sm {
    display: inline-block;
    vertical-align: middle;
  }
}
