
@-webkit-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-webkit-keyframes zoomIn {
  0% {
    -webkit-transform: matrix3d(0.5, 0, 0, 0, 0, 0.5, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(0.5, 0, 0, 0, 0, 0.5, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
    opacity: 0; }
  4.5% {
    -webkit-transform: matrix3d(0.743, 0, 0, 0, 0, 0.743, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(0.743, 0, 0, 0, 0, 0.743, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  9.01% {
    -webkit-transform: matrix3d(0.94, 0, 0, 0, 0, 0.94, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(0.94, 0, 0, 0, 0, 0.94, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
    opacity: 1; }
  13.51% {
    -webkit-transform: matrix3d(1.044, 0, 0, 0, 0, 1.044, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(1.044, 0, 0, 0, 0, 1.044, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  17.92% {
    -webkit-transform: matrix3d(1.07, 0, 0, 0, 0, 1.07, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(1.07, 0, 0, 0, 0, 1.07, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  29.03% {
    -webkit-transform: matrix3d(1.016, 0, 0, 0, 0, 1.016, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(1.016, 0, 0, 0, 0, 1.016, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  34.63% {
    -webkit-transform: matrix3d(0.997, 0, 0, 0, 0, 0.997, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(0.997, 0, 0, 0, 0, 0.997, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  40.14% {
    -webkit-transform: matrix3d(0.992, 0, 0, 0, 0, 0.992, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(0.992, 0, 0, 0, 0, 0.992, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  62.36% {
    -webkit-transform: matrix3d(1.001, 0, 0, 0, 0, 1.001, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(1.001, 0, 0, 0, 0, 1.001, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  84.68% {
    -webkit-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  100% {
    -webkit-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); } }

@keyframes zoomIn {
  0% {
    -webkit-transform: matrix3d(0.5, 0, 0, 0, 0, 0.5, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(0.5, 0, 0, 0, 0, 0.5, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
    opacity: 0; }
  4.5% {
    -webkit-transform: matrix3d(0.743, 0, 0, 0, 0, 0.743, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(0.743, 0, 0, 0, 0, 0.743, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  9.01% {
    -webkit-transform: matrix3d(0.94, 0, 0, 0, 0, 0.94, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(0.94, 0, 0, 0, 0, 0.94, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
    opacity: 1; }
  13.51% {
    -webkit-transform: matrix3d(1.044, 0, 0, 0, 0, 1.044, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(1.044, 0, 0, 0, 0, 1.044, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  17.92% {
    -webkit-transform: matrix3d(1.07, 0, 0, 0, 0, 1.07, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(1.07, 0, 0, 0, 0, 1.07, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  29.03% {
    -webkit-transform: matrix3d(1.016, 0, 0, 0, 0, 1.016, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(1.016, 0, 0, 0, 0, 1.016, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  34.63% {
    -webkit-transform: matrix3d(0.997, 0, 0, 0, 0, 0.997, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(0.997, 0, 0, 0, 0, 0.997, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  40.14% {
    -webkit-transform: matrix3d(0.992, 0, 0, 0, 0, 0.992, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(0.992, 0, 0, 0, 0, 0.992, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  62.36% {
    -webkit-transform: matrix3d(1.001, 0, 0, 0, 0, 1.001, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(1.001, 0, 0, 0, 0, 1.001, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  84.68% {
    -webkit-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  100% {
    -webkit-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); } }

@-webkit-keyframes spin {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes spin {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

html,
body {
  margin: 0;
  padding: 0; }

html {
  font-family: sans-serif;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: subpixel-antialiased;
  text-rendering: optimizeLegibility; }

*, *::before, *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

h1,
h2,
h3,
h4,
p,
blockquote,
figure,
ol,
ul {
  margin: 0;
  padding: 0; }

main {
  display: block; }

h1,
h2,
h3,
h4 {
  font-size: inherit;
  font-weight: normal; }

strong {
  font-weight: bold; }

a,
button {
  color: inherit; }

a {
  text-decoration: none; }

button {
  -webkit-appearance: none;
  overflow: visible;
  border: 0;
  font: inherit;
  -webkit-font-smoothing: inherit;
  letter-spacing: inherit;
  background: none;
  cursor: pointer;
  border-radius: 0; }

::-moz-focus-inner {
  padding: 0;
  border: 0; }

:focus {
  outline: 0; }

img {
  display: block;
  position: relative;
  max-width: 100%;
  height: auto;
  border: 0;
  margin: 0 auto; }

input,
textarea {
  -webkit-appearance: none;
  border-radius: 0; }

a,
area,
button,
input,
label,
select,
textarea {
  -ms-touch-action: manipulation;
      touch-action: manipulation; }



.space-bottom {
  margin-bottom: 2rem; }
  @media (min-width: 820px) {
    .space-bottom {
      margin-bottom: 4rem; } }

blockquote {
  display: block;
  position: relative;
  margin: 0 10% 0 0;
  padding: 3em 0;
  font-family: "Akzidenz-Grotesk Super", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: normal;
  text-transform: uppercase; }
  blockquote::before {
    content: '“';
    display: block;
    padding-top: .3em;
    font-size: 9.0625em;
    line-height: .2;
    color: #000000; }
    .dark blockquote::before {
      color: #ffffff; }
  blockquote p {
    margin: 0 0 1rem;
    font-size: 1.5em;
    line-height: 1.1; }
    @media (min-width: 820px) {
      blockquote p {
        font-size: 3.25em;
        line-height: 1; } }
    blockquote p.footnote {
      font-size: .9375em; }
  blockquote a {
    display: inline-block;
    border-bottom: 1px solid #000000; }
    .dark blockquote a {
      border-color: #ffffff; }
  blockquote.clean::before {
    display: none; }

hr {
  margin: 2rem 0 3rem;
  border: none;
  height: 0;
  border-top: 1px solid #000000; }
  @media (min-width: 820px) {
    hr {
      margin: 4rem 0 6rem; } }
  .dark hr {
    border-color: #ffffff; }

.icon {
  display: inline-block;
  vertical-align: middle;
  width: 2.5em;
  height: 2.5em;
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor; }

.arrow {
  font-family: sans-serif !important; }

::-moz-selection {
  color: #ffffff;
  background: #000000; }

::selection {
  color: #ffffff;
  background: #000000; }

body.menu-open, body.filter-open, body.in-transition {
  overflow: hidden; }

#barba-wrapper {
  min-height: calc(100vh - 0rem); }

.dark .barba-container {
  background: #000000;
  color: #ffffff; }

.wrapper {
  max-width: 2400px;
  margin: 0 auto;
  padding: 0 0;
  overflow: hidden; }

.video-wrapper {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }
  @media (min-aspect-ratio: 16 / 9) {
    .video-wrapper {
      height: 300%;
      top: -100%; } }
  @media (max-aspect-ratio: 16 / 9) {
    .video-wrapper {
      width: 300%;
      left: -100%; } }
  .video-wrapper iframe {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    -webkit-transform: translate3d(-50%, -50%, 0);
            transform: translate3d(-50%, -50%, 0); }

.error-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: calc(100vh - 8rem); }
  .error-wrapper .error-content {
    margin-top: 5rem;
    text-align: center; }
    .error-wrapper .error-content h1 {
      margin: 0;
      font-size: 30vw; }
    .error-wrapper .error-content h2 {
      margin: 0;
      font-size: 3vw; }

.page-content,
.project-content {
  position: relative;
  margin-top: 6rem; }
  @media (min-width: 820px) {
    .page-content,
    .project-content {
      margin-top: 12rem; } }
  .page-content p a,
  .project-content p a {
    display: inline-block;
    font-family: "Akzidenz-Grotesk Bold", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: normal;
    border-bottom: 1px solid #000000; }
    .dark .page-content p a, .dark
    .project-content p a {
      border-color: #ffffff; }
  .page-content p:empty,
  .project-content p:empty {
    display: none !important; }
  .page-content blockquote a,
  .project-content blockquote a {
    font-family: "Akzidenz-Grotesk Super", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: normal; }
  .page-content ul, .page-content ol,
  .project-content ul,
  .project-content ol {
    font-size: 1.07em;
    line-height: 1.4;
    margin: 0 0 2em; }
  .page-content ul li,
  .project-content ul li {
    position: relative;
    padding-left: 1em; }
    .page-content ul li::before,
    .project-content ul li::before {
      content: '–';
      display: block;
      position: absolute;
      left: 0;
      top: 0; }
  .page-content ol,
  .project-content ol {
    margin-left: 1em; }

/*----- LAYOUT CONTENT -----*/
.layout-row {
  position: relative; }
  .layout-row.row--edgeless {
    margin: 0 -2rem; }
  .layout-row.row--full-width {
    margin: 0 -1rem; }
  @media (min-width: 820px) {
    .layout-row.row--padded {
      padding: 0 6rem; } }
  @media (min-width: 980px) {
    .layout-row.row--padded {
      padding: 0 8rem; } }
  .layout-row.col--tight {
    margin: 2rem 0; }

.text-block {
  margin: 2rem 0; }
  @media (min-width: 820px) {
    .text-block {
      margin: 4rem 0; } }

.photo-block {
  position: relative;
  overflow: hidden;
  margin: 2rem 0;
  background: #ebebeb; }
  .dark .photo-block {
    background: #1a1a1a; }
  @media (min-width: 820px) {
    .photo-block {
      margin: 4rem 0; } }
  .photo-block::after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2rem;
    height: 2rem;
    margin-left: -1rem;
    margin-top: -1rem;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.4);
    border-top-color: #ffffff;
    -webkit-animation: spin .6s linear infinite;
            animation: spin .6s linear infinite; }
    .dark .photo-block::after {
      border-color: rgba(255, 255, 255, 0.1);
      border-top-color: #ffffff; }
  .photo-block img {
    display: block;
    width: 100%;
    height: auto;
    opacity: 0;
    -webkit-transition: opacity .3s linear;
    transition: opacity .3s linear;
    z-index: 1; }
    .photo-block img.loaded {
      opacity: 1; }

.video-block {
  position: relative;
  overflow: hidden;
  margin: 2rem 0;
  background: #ebebeb;
  z-index: 1; }
  @media (min-width: 820px) {
    .video-block {
      margin: 4rem 0; } }
  .video-block img {
    display: block;
    width: 100%;
    height: auto;
    opacity: 0;
    -webkit-transition: opacity .3s linear;
    transition: opacity .3s linear; }
    .video-block img.loaded {
      opacity: 1; }
  .video-block iframe {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    border: none;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all .3s linear;
    transition: all .3s linear; }
  .video-block.playing iframe, .video-block.paused iframe {
    opacity: 1;
    visibility: visible; }

.gallery-block {
  display: block;
  margin: 2rem 0;
  background: #ebebeb; }
  @media (min-width: 820px) {
    .gallery-block {
      margin: 4rem 0; } }
  .gallery-block .swiper-slide {
    overflow: hidden; }
  .gallery-block .gallery {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: none; }
    .gallery-block .gallery .gallery-photo {
      position: relative;
      width: 100%;
      height: 100%;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }

/*----- MODIFIERS -----*/
.flush-top {
  margin-top: 0; }

.flush-bottom {
  margin-bottom: 0; }

@media (min-width: 820px) {
  .push-top {
    margin-top: 8rem; } }

@media (min-width: 820px) {
  .push-bottom {
    margin-bottom: 8rem; } }

.size--one-third {
  width: 33.33333%; }

.size--half {
  width: 50%; }

.size--three-fourths {
  width: 75%; }

.align--center {
  margin-left: auto;
  margin-right: auto; }

.align--right {
  margin-left: auto; }

.aspect--16x9 {
  position: relative; }
  .aspect--16x9:before {
    content: '';
    display: block;
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; }
  .aspect--16x9 img {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }

.aspect--landscape {
  position: relative; }
  .aspect--landscape:before {
    content: '';
    display: block;
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 69.2307692308%; }
  .aspect--landscape img {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }

.aspect--portrait {
  position: relative; }
  .aspect--portrait:before {
    content: '';
    display: block;
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 127.205882353%; }
  .aspect--portrait img {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }

.aspect--square {
  position: relative; }
  .aspect--square:before {
    content: '';
    display: block;
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 100%; }
  .aspect--square img {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }

#header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 7; }

.header-content {
  padding: 0 7em; }

.logo {
  display: block;
  position: relative;
  margin-top: -.125em;
  color: #000000;
  text-align: center;
  font-family: "Akzidenz-Grotesk Super", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: normal;
  font-size: 8vw;
  line-height: .9;
  text-transform: uppercase;
  -webkit-transform-origin: 50% 0;
          transform-origin: 50% 0;
  -webkit-transition: color .2s linear, -webkit-transform .2s ease;
  transition: color .2s linear, -webkit-transform .2s ease;
  transition: color .2s linear, transform .2s ease;
  transition: color .2s linear, transform .2s ease, -webkit-transform .2s ease; }
  
.home-content {
  position: relative;
  background: #ffffff;
  margin-left: -1rem;
  margin-right: -1rem;
  padding: 0 1rem; }
  @media (min-width: 820px) {
    .home-content {
      margin-left: -2rem;
      margin-right: -2rem;
      padding: 0 2rem; } }

.fullscreen-gallery {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 100vh;
  background: #ebebeb; }
  @media (min-width: 820px) {
    .fullscreen-gallery {
      height: 100%;
      max-height: 100vh; } }
  .fullscreen-gallery + .home-content {
    margin-top: 60vh; }
    @media (min-width: 820px) {
      .fullscreen-gallery + .home-content {
        margin-top: 100vh; } }
  .fullscreen-gallery .hero-gallery {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
    .fullscreen-gallery .hero-gallery .swiper-slide {
      overflow: hidden; }
  .fullscreen-gallery .gallery-nav {
    display: none; }
  .fullscreen-gallery .project-link {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0; }
    .fullscreen-gallery .project-link .project-thumb {
      position: relative;
      width: 100%;
      height: 100%;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }

.featured-gallery {
  position: relative;
  margin: 0 -1rem;
  margin-bottom: 2rem;
  background: #ebebeb;
  position: relative; }
  .featured-gallery:before {
    content: '';
    display: block;
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 83.3333333333%; }
  @media (min-width: 820px) {
    .featured-gallery {
      margin: 0 -2rem;
      margin-bottom: 4rem;
      position: relative; }
      .featured-gallery:before {
        content: '';
        display: block;
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 48.4375%; } }
  .featured-gallery + .page-content {
    margin-top: 0; }
  .featured-gallery .hero-gallery {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
    .featured-gallery .hero-gallery .swiper-slide {
      overflow: hidden; }
  .featured-gallery .project-link {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0; }
    .featured-gallery .project-link .project-thumb {
      position: relative;
      width: 100%;
      height: 100%;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }

.projects-list {
  position: relative;
  margin: 0 auto;
  padding-bottom: 2rem; }
  @media (min-width: 820px) {
    .projects-list {
      padding: 0 6rem 5rem; } }
  @media (min-width: 980px) {
    .projects-list {
      padding: 0 8rem 5rem; } }
  .projects-list a.project-link {
    display: block;
    position: relative;
    margin-bottom: 2rem; }
    @media (min-width: 820px) {
      .projects-list a.project-link {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: nowrap;
            -ms-flex-wrap: nowrap;
                flex-wrap: nowrap;
        margin: 10rem 0; } }
    @media (min-width: 820px) {
      .projects-list a.project-link:first-child {
        margin-top: 5rem; } }
    .projects-list a.project-link:last-child {
      margin-bottom: 0; }
    @media (min-width: 820px) {
      .projects-list a.project-link .project-details {
        padding-left: 2rem; } }
    @media (min-width: 820px) {
      .projects-list a.project-link:nth-child(even) {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: row-reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse; }
        .projects-list a.project-link:nth-child(even) .project-details {
          padding-left: 0;
          padding-right: 2rem; } }
  .projects-list .project-thumb {
    overflow: hidden;
    position: relative;
    -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
    .projects-list .project-thumb:before {
      content: '';
      display: block;
      position: relative;
      width: 100%;
      height: 0;
      padding-bottom: 56.25%; }
    @media (min-width: 820px) {
      .projects-list .project-thumb {
        width: 65%; } }
    .projects-list .project-thumb img {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: auto;
      opacity: 0;
      -webkit-transition: opacity .3s linear;
      transition: opacity .3s linear; }
      .projects-list .project-thumb img.loaded {
        opacity: 1; }
    .projects-list .project-thumb iframe {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      width: 100%;
      height: 100%;
      border: none;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition: all .3s linear;
      transition: all .3s linear; }
    .projects-list .project-thumb .video-cover {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 2; }
  .projects-list .project-details {
    position: relative;
    margin-top: .6rem;
    z-index: 2;
    -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
    @media (min-width: 820px) {
      .projects-list .project-details {
        top: auto;
        right: auto;
        width: auto;
        max-width: 35%;
        margin-top: 5rem; } }
  .projects-list .project-title {
    margin-bottom: .01em;
    font-size: 1.5em;
    line-height: 1; }
    @media (min-width: 820px) {
      .projects-list .project-title {
        font-size: 2em; } }
  .projects-list .project-client {
    font-family: "Akzidenz-Grotesk Medium", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: normal;
    font-size: .8em; }
    @media (min-width: 820px) {
      .projects-list .project-client {
        font-size: .875em; } }

.view-all {
  padding: 2rem 0;
  text-align: center; }
  .view-all .open-filter {
    display: inline-block;
    cursor: pointer;
    padding: 0;
    font-family: "Akzidenz-Grotesk Super", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: normal;
    font-size: 1.5em;
    text-transform: uppercase; }
    @media (min-width: 820px) {
      .view-all .open-filter {
        font-size: 2em; } }

#news-grid {
  margin: 0 -1rem 2rem; }
  #news-grid::before, #news-grid::after {
    content: '';
    display: table;
    clear: both; }

.news-item {
  padding: 1rem;
  -webkit-animation: .3s linear .1s both fadeIn;
          animation: .3s linear .1s both fadeIn; }
  .news-item .news-thumb {
    margin-top: 0;
    margin-bottom: 1rem; }
    .news-item .news-thumb iframe {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      width: 100%;
      height: 100%;
      border: none;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition: all .3s linear;
      transition: all .3s linear;
      z-index: 1; }
    .news-item .news-thumb .video-cover {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 2; }
  .news-item .news-meta {
    margin-bottom: .25em;
    font-family: "Akzidenz-Grotesk Super", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: normal;
    font-size: 2.4em;
    text-transform: uppercase; }
  .news-item .news-title {
    font-size: 1.5em;
    line-height: 1; }
    @media (min-width: 820px) {
      .news-item .news-title {
        margin-bottom: .5em; } }

.load-more {
  position: relative;
  padding: 2rem 0 4rem;
  text-align: center; }
  .load-more::after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2rem;
    height: 2rem;
    margin-left: -1rem;
    margin-top: -2rem;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.4);
    border-top-color: #ffffff;
    -webkit-animation: spin .6s linear infinite;
            animation: spin .6s linear infinite;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all .2s linear;
    transition: all .2s linear; }
    .dark .load-more::after {
      border-color: rgba(255, 255, 255, 0.1);
      border-top-color: #ffffff; }
  .load-more.loading::after {
    opacity: 1;
    visibility: visible; }
  .load-more.loading .load-more-btn {
    opacity: 0;
    visibility: hidden; }
  .load-more .load-more-btn {
    display: inline-block;
    cursor: pointer;
    padding: 0;
    font-family: "Akzidenz-Grotesk Super", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: normal;
    font-size: 1.5em;
    text-transform: uppercase;
    -webkit-transition: all .2s linear;
    transition: all .2s linear; }
    @media (min-width: 820px) {
      .load-more .load-more-btn {
        font-size: 2em; } }

#instagram-feed {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  position: relative;
  margin: 0 -.5rem; }
  #instagram-feed.loading::after {
    content: '';
    display: block;
    position: absolute;
    top: 1.5rem;
    left: .5rem;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    border: 2px solid #ebebeb;
    border-top-color: #000000;
    -webkit-animation: spin .6s linear infinite;
            animation: spin .6s linear infinite; }
  #instagram-feed .feed-image {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    max-width: 50%;
    padding: .5rem; }
    @media (min-width: 820px) {
      #instagram-feed .feed-image {
        -webkit-flex-basis: 20%;
            -ms-flex-preferred-size: 20%;
                flex-basis: 20%;
        max-width: 20%; } }
    #instagram-feed .feed-image a {
      display: block;
      position: relative;
      background: #ebebeb;
      overflow: hidden; }
      #instagram-feed .feed-image a:before {
        content: '';
        display: block;
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 100%; }
      .dark #instagram-feed .feed-image a {
        background: #6c6b6b; }
      #instagram-feed .feed-image a img {
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%) scale(1.005);
                transform: translateY(-50%) scale(1.005);
        width: 100%;
        height: auto; }
      #instagram-feed .feed-image a .overlay {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #000000;
        color: #ffffff;
        font-family: "Akzidenz-Grotesk Super", "Helvetica Neue", Helvetica, Arial, sans-serif;
        font-weight: normal;
        font-size: 1.25em;
        text-transform: uppercase;
        opacity: 0;
        visibility: hidden;
        -webkit-transition: all .2s linear;
        transition: all .2s linear; }
        .dark #instagram-feed .feed-image a .overlay {
          background: #ffffff;
          color: #000000; }
      #instagram-feed .feed-image a:hover .overlay {
        opacity: 1;
        visibility: visible; }

@media (min-width: 820px) {
  .project-header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end; }
    .project-header .project-details,
    .project-header .project-type {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .project-header .project-details {
      -webkit-flex-basis: 55%;
          -ms-flex-preferred-size: 55%;
              flex-basis: 55%;
      max-width: 55%; }
    .project-header .project-type {
      -webkit-flex-basis: 45%;
          -ms-flex-preferred-size: 45%;
              flex-basis: 45%;
      max-width: 45%;
      padding-left: 8rem; } }

.project-header .project-title {
  margin-bottom: .5rem; }

.project-header .project-client span {
  display: inline-block;
  border-bottom: 1px solid #000000; }

.project-header .project-desc {
  margin-top: 2rem; }
  .project-header .project-desc > *:last-child {
    margin-bottom: 0; }

.project-header .project-type {
  margin-top: 2rem; }
  .project-header .project-type ul {
    margin: 0;
    line-height: 1.35; }
    .project-header .project-type ul li {
      display: inline;
      padding: 0; }
      .project-header .project-type ul li::before {
        display: none; }
      .project-header .project-type ul li::after {
        content: ', ';
        display: inline;
        position: relative; }
      .project-header .project-type ul li:last-child::after {
        display: none; }

.related-work {
  margin-top: 4rem;
  margin-bottom: 1rem; }
  @media (min-width: 820px) {
    .related-work {
      margin-top: 8rem;
      margin-bottom: 2rem; } }
  .related-work nav {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    margin: 0 -.5rem; }
  .related-work a.project-link {
    display: block;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    max-width: 50%;
    padding: .5rem; }
    .related-work a.project-link .project-thumb {
      margin: 1rem 0; }
      .related-work a.project-link .project-thumb iframe {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        border: none;
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
        -webkit-transition: all .3s linear;
        transition: all .3s linear;
        z-index: 1; }
      .related-work a.project-link .project-thumb .video-cover {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 2; }
    .related-work a.project-link .project-title {
      margin-top: 0;
      margin-bottom: .15em;
      font-size: 1.1em;
      line-height: 1; }
      @media (min-width: 820px) {
        .related-work a.project-link .project-title {
          font-size: 1.375em; } }
    .related-work a.project-link .project-client {
      font-size: .8em; }
      @media (min-width: 820px) {
        .related-work a.project-link .project-client {
          font-size: .9375em; } }

/**
 * Swiper 3.4.2
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * 
 * http://www.idangero.us/swiper/
 * 
 * Copyright 2017, Vladimir Kharlampidi
 * The iDangero.us
 * http://www.idangero.us/
 * 
 * Licensed under MIT
 * 
 * Released on: March 10, 2017
 */
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
  transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  -webkit-flex-shrink: 0;
  -ms-flex: 0 0 auto;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative; }

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto; }

.swiper-container-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  -ms-flex-align: start;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-transition-property: -webkit-transform, height;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform; }

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
  touch-action: pan-y; }

.swiper-wp8-vertical {
  -ms-touch-action: pan-x;
  touch-action: pan-x; }

/* Arrows */
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 27px 44px;
  background-position: center;
  background-repeat: no-repeat; }

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-prev.swiper-button-black,
.swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-white,
.swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-next.swiper-button-black,
.swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white,
.swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

/* Pagination Styles */
.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 300ms;
  transition: 300ms;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 10; }

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0; }

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
  animation: swiper-preloader-spin 1s steps(12, end) infinite; }

.swiper-lazy-preloader:after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-position: 50%;
  background-size: 100%;
  background-repeat: no-repeat; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg); } }

@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.cursor-hotspot {
  position: absolute;
  z-index: 2;
  cursor: none; }
  .cursor-hotspot.prev {
    top: 0;
    left: 0;
    width: 50%;
    height: 100%; }
  .cursor-hotspot.next {
    top: 0;
    right: 0;
    width: 50%;
    height: 100%; }
  .cursor-hotspot.down {
    bottom: 0;
    left: 0;
    right: 0;
    height: 25%;
    z-index: 3; }

.cursor-layer {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  color: #000000;
  font-family: sans-serif;
  font-size: 2em;
  pointer-events: none;
  cursor: none;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity .1s linear, visibility .1s linear;
  transition: opacity .1s linear, visibility .1s linear; }
  .hero-gallery:hover .cursor-layer,
  .gallery:hover .cursor-layer {
    opacity: 1;
    visibility: visible; }
  .cursor-layer.hide-cursor {
    opacity: 0 !important;
    visibility: hidden !important; }

.video-wrapper {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all .3s linear;
  transition: all .3s linear; }
  .playing .video-wrapper,
  .paused .video-wrapper {
    opacity: 1;
    visibility: visible; }

.video-control {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  margin: 0;
  padding: 0;
  background: #ffffff;
  color: #000000;
  font-size: .65em;
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
  z-index: 9;
  -webkit-transition: opacity .2s linear, -webkit-transform .3s ease;
  transition: opacity .2s linear, -webkit-transform .3s ease;
  transition: transform .3s ease, opacity .2s linear;
  transition: transform .3s ease, opacity .2s linear, -webkit-transform .3s ease; }
  
.link-control {
  display: block;
  position: absolute;
  bottom:0;
  left:0;
  margin:0;
  padding:0;
  /*background:rgba(255,255,255,0.1);*/
  color: #000000;
  font-size: .65em;
  width:100%;
  height:30%;
  z-index: 9;
  -webkit-transition: opacity .2s linear, -webkit-transform .3s ease;
  transition: opacity .2s linear, -webkit-transform .3s ease;
  transition: transform .3s ease, opacity .2s linear;
  transition: transform .3s ease, opacity .2s linear, -webkit-transform .3s ease; }
.link-control a { display:block; width:100%; height:100%; }  
  .playing .video-control {
    opacity: 0;
    -webkit-transition: opacity .2s 2.5s linear, -webkit-transform .3s ease;
    transition: opacity .2s 2.5s linear, -webkit-transform .3s ease;
    transition: transform .3s ease, opacity .2s 2.5s linear;
    transition: transform .3s ease, opacity .2s 2.5s linear, -webkit-transform .3s ease; }
    .playing .video-control:hover {
      opacity: 1;
      -webkit-transition: opacity .2s linear, -webkit-transform .3s ease;
      transition: opacity .2s linear, -webkit-transform .3s ease;
      transition: transform .3s ease, opacity .2s linear;
      transition: transform .3s ease, opacity .2s linear, -webkit-transform .3s ease; }
    .playing .video-control span.video-icon.play {
      opacity: 0;
      visibility: hidden;
      -webkit-transform: scale(0.85);
              transform: scale(0.85); }
    .playing .video-control span.video-icon.pause {
      opacity: 1;
      visibility: visible;
      -webkit-transform: none;
              transform: none; }
  .restart .video-control span.video-icon.play {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: scale(0.85);
            transform: scale(0.85); }
  .restart .video-control span.video-icon.restart {
    opacity: 1;
    visibility: visible;
    -webkit-transform: none;
            transform: none; }
  .restart .video-control:hover {
    -webkit-transform: translate3d(-50%, -50%, 0) scale(1.05) rotate(-180deg);
            transform: translate3d(-50%, -50%, 0) scale(1.05) rotate(-180deg); }
  .video-control:hover {
    -webkit-transform: translate3d(-50%, -50%, 0) scale(1.05);
            transform: translate3d(-50%, -50%, 0) scale(1.05); }
  .video-control span.video-icon {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -1.25em;
    margin-left: -1.25em;
    -webkit-transition: opacity .1s linear, visibility .1s linear, -webkit-transform .2s ease;
    transition: opacity .1s linear, visibility .1s linear, -webkit-transform .2s ease;
    transition: transform .2s ease, opacity .1s linear, visibility .1s linear;
    transition: transform .2s ease, opacity .1s linear, visibility .1s linear, -webkit-transform .2s ease; }
    .video-control span.video-icon.pause, .video-control span.video-icon.restart {
      opacity: 0;
      visibility: hidden;
      -webkit-transform: scale(0.85);
              transform: scale(0.85);
      -webkit-transform-origin: center center;
              transform-origin: center center; }

.gallery-nav {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  margin: 1rem;
  text-align: center;
  z-index: 2; }
  .gallery-nav .swiper-pagination-bullet {
    margin: 0 .3rem;
    width: 7px;
    height: 7px;
    display: inline-block;
    border-radius: 50%;
    background: #ebebeb;
    -webkit-transform: none;
            transform: none;
    -webkit-transition: background 0.2s linear, -webkit-transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
    transition: background 0.2s linear, -webkit-transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
    transition: background 0.2s linear, transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
    transition: background 0.2s linear, transform 0.4s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
    cursor: pointer; }
    .gallery-nav .swiper-pagination-bullet:hover {
      background: #d2d1d1; }
    .gallery-nav .swiper-pagination-bullet-active {
      background: #000000 !important;
      -webkit-transform: scale3d(1.5, 1.5, 1.5);
              transform: scale3d(1.5, 1.5, 1.5); }

.reveal {
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000; }
  .dark .reveal {
    border-color: #ffffff; }
  .reveal .reveal-toggle {
    position: relative;
    cursor: pointer;
    padding: .65em 0;
    padding-right: 15%; }
    .reveal .reveal-toggle::before, .reveal .reveal-toggle::after {
      content: '';
      display: block;
      position: absolute;
      top: 1.1em;
      background: #000000;
      -webkit-transition: all .3s ease;
      transition: all .3s ease; }
      .dark .reveal .reveal-toggle::before, .dark .reveal .reveal-toggle::after {
        background: #ffffff; }
    .reveal .reveal-toggle::before {
      width: 1em;
      height: 2px;
      margin-top: -1px;
      right: 0; }
    .reveal .reveal-toggle::after {
      width: 2px;
      height: 1em;
      margin-top: -.5em;
      right: .5em;
      margin-right: -1px; }
    .reveal .reveal-toggle span {
      display: block;
      margin-top: .25em;
      font-family: "Akzidenz-Grotesk Medium", "Helvetica Neue", Helvetica, Arial, sans-serif;
      font-weight: normal;
      font-size: .73em;
      line-height: 1.35;
      text-transform: none; }
    .reveal .reveal-toggle.open::before, .reveal .reveal-toggle.open::after {
      -webkit-transform: rotate(135deg);
              transform: rotate(135deg); }
  .reveal .reveal-content {
    display: none;
    padding-bottom: 2em;
    margin-right: 2rem; }
    .reveal .reveal-content :last-child {
      margin-bottom: 0; }

.reveal-set {
  margin: 3rem 0 2rem; }
  @media (min-width: 820px) {
    .reveal-set {
      margin: 3rem 0; } }
  .reveal-set > h4 {
    margin-bottom: 1rem; }
  .reveal-set > h3 {
    margin-top: .65em;
    margin-bottom: .25em; }
  .reveal-set .reveal {
    margin-bottom: -1px; }
	
.video-control { display:none; }
.gallery-nav { display:none; }

.slide-project-link { cursor:url(../images/down.png), auto; }
.cursor-hotspot.down { display:none; }
.cursor-hotspot.prev { cursor:url(../images/prev.png), auto; }
.cursor-hotspot.next { cursor:url(../images/next.png), auto; }

.swiper-slide figure {
    position: absolute;
    height: 100%;
	left:0; top:0; width:100%;
}
.swiper-slide p.detail {
	font-family: 'gilroybold';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 64%;
    text-align: justify;
    padding: 0px;
    color: #505050;
    margin: 0;
    font-size:22px;
    line-height: 42px;
    font-weight: 900;
    letter-spacing: .03em;
    z-index: 1;
    transition: all .3s ease;
    transform: translate(-50%, -50%);
}
.swiper-slide p.detail strong {
    color: #fff;
    font-weight: 900;
    position: relative;
}
/*
.swiper-slide p.detail strong:before {
    content: "";
    width: 100%;
    height: 1px;
    background: #fff;
    position: absolute;
    bottom: -4px;
}*/
@media screen and (max-width:767px) {
.swiper-slide p.detail { font-size:16px; line-height:24px; width:80%; }
}