/* Welcome to Compass.
 * In this file you should write your main styles. (or centralize your imports)
 * Import this file using the following HTML or equivalent:
 * <link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet" type="text/css" /> */
/* MUST BE THE SAME AS VALUE IN config.py */
/* Media Queries */
/* Viewport width + max  
    outputs both desktop in vw's and max in px 
*/
/* Viewport portrait + mobile  

*/
input, textarea, select, a {
  outline: none;
  border-radius: 0;
  -webkit-appearance: none;
  background: inherit;
  font-family: inherit;
  color: inherit;
}

.preserve-3d {
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.vertical-align {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 0;
}

.bg-cover {
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.cover {
  object-fit: cover;
}

.full-height {
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
}

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

.tap-target, .slick-dots li {
  position: relative;
}
.tap-target::after, .slick-dots li::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1000;
  width: calc(100% + 1em);
  height: calc(100% + 1em);
  top: -0.5em;
  left: -0.5em;
  border-radius: 0.5em;
}

a {
  color: inherit;
  text-decoration: none;
}

.lower {
  text-transform: lowercase;
}

.upper {
  text-transform: uppercase;
}

.underline {
  text-decoration: underline !important;
}

.center {
  text-align: center;
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.fl {
  float: left;
}

.fr {
  float: right;
}

.pointer {
  cursor: pointer;
}

.hide {
  display: none !important;
}

.m-auto {
  margin-left: auto;
  margin-right: auto;
}

.fw-img {
  width: 100%;
  display: block;
}

.onum {
  font-feature-settings: "onum" 1;
  font-feature-settings: "onum" on;
}

.smoothing {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ff__100 {
  font-weight: 100;
}

.ff__200 {
  font-weight: 200;
}

.ff__300 {
  font-weight: 300;
}

.ff__400 {
  font-weight: 400;
}

.ff__500 {
  font-weight: 500;
}

.ff__600 {
  font-weight: 600;
}

.ff__700 {
  font-weight: 700;
}

.ff__800 {
  font-weight: 800;
}

.ff__900 {
  font-weight: 900;
}

.ff--16-18 {
  font-size: 1.1713030747vw;
  line-height: 1.317715959vw;
}
@media (min-width: 1921px) {
  .ff--16-18 {
    font-size: 22.4890190337px;
    line-height: 25.3001464129px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .ff--16-18 {
    font-size: 3.536vw;
    line-height: 4.368vw;
  }
}

.bg--grey {
  background: rgb(235, 235, 235);
}

.ff--30-36 {
  font-size: 2.196193265vw;
  line-height: 2.635431918vw;
}
@media (min-width: 1921px) {
  .ff--30-36 {
    font-size: 42.1669106881px;
    line-height: 50.6002928258px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .ff--30-36 {
    font-size: 5.2vw;
    line-height: 6.24vw;
  }
}

.ff--50-60 {
  font-size: 3.6603221083vw;
  line-height: 4.39238653vw;
}
@media (min-width: 1921px) {
  .ff--50-60 {
    font-size: 70.2781844802px;
    line-height: 84.3338213763px;
  }
}

@media (max-width: 767px) and (orientation:portrait) {
  .ffm--75-90 {
    font-size: 10vw;
    line-height: 12vw;
  }
}

.ff--100-120 {
  font-size: 7.3206442167vw;
  line-height: 8.78477306vw;
}
@media (min-width: 1921px) {
  .ff--100-120 {
    font-size: 140.5563689605px;
    line-height: 168.6676427526px;
  }
}

.ff--wide {
  letter-spacing: 0.15em;
}

.ff__normal, .ff--normal {
  font-style: normal;
  letter-spacing: normal;
}

.ff__italic {
  font-style: italic;
}

.ff__oblique {
  font-style: oblique;
}

.spread {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

/*
Avoid empty images to appear as broken
*/
.DF__lazy :not([src]):not([srcset]) {
  visibility: hidden;
}

/* 
Fixes the Firefox anomaly while images are loading
*/
@-moz-document url-prefix() {
  .DF__lazy :-moz-loading {
    visibility: hidden;
  }
}
.DF__lazy {
  opacity: 0;
}

.DF__lazy:not(.initial) {
  transition: opacity 1s;
}

.DF__lazy.initial,
.DF__lazy.loaded,
.DF__lazy.error {
  opacity: 1;
}

.DF__background_image_container {
  position: relative;
  /*
  Used to calculate a padded box based it padding at 100%
  */
  width: 100%;
  padding-top: 56.25%;
}

.DF__vimeo_wrapper {
  position: relative;
  /*
  Used to calculate a padded box based it padding at 100%
  */
  width: 100%;
  padding-top: 56.25%;
}

.DF__vimeo_thumbnail,
.DF__vimeo_iframe {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.DF__play_button {
  position: absolute;
  top: 50%;
  left: 50%;
}

#grid .inner {
  background-image: url("../grid.png");
  height: 100%;
  background-size: 100%;
}

#grid {
  opacity: 1;
  z-index: 10000;
  position: fixed;
  height: 100%;
  width: 100%;
  top: 0px;
  left: 0;
  display: none;
}

#grid-trigger {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 64px;
  height: 64px;
  background-color: grey;
  z-index: 10001;
}

.DF__gateway__form {
  width: 90%;
  margin: auto;
  text-align: center;
  height: 100%;
  position: relative;
  font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
}

.DF__gateway__input {
  font-family: inherit;
  font-size: 20px;
  border: 1px solid black;
  margin-bottom: 40px;
}

.DF__gateway__submit {
  font-family: inherit;
  font-size: 20px;
}

/*
Avoid empty images to appear as broken
*/
.DF__lazy :not([src]):not([srcset]) {
  visibility: hidden;
}

/* 
Fixes the Firefox anomaly while images are loading
*/
@-moz-document url-prefix() {
  .DF__lazy :-moz-loading {
    visibility: hidden;
  }
}
.DF__lazy {
  opacity: 0;
}

.DF__lazy:not(.initial) {
  transition: opacity 1s;
}

.DF__lazy.initial,
.DF__lazy.loaded,
.DF__lazy.error {
  opacity: 1;
}

.DF__background_image_container {
  position: relative;
  /*
  Used to calculate a padded box based it padding at 100%
  */
  width: 100%;
  padding-top: 56.25%;
}

.DF__vimeo_wrapper {
  position: relative;
  /*
  Used to calculate a padded box based it padding at 100%
  */
  width: 100%;
  padding-top: 56.25%;
}

.DF__vimeo_thumbnail,
.DF__vimeo_iframe {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.DF__play_button {
  position: absolute;
  top: 50%;
  left: 50%;
}

input, textarea, button {
  background: inherit;
  font-family: inherit;
  color: inherit;
}

.DF__form_input ::-webkit-input-placeholder,
.DF__form_textarea ::-webkit-input-placeholder {
  opacity: 1;
}
.DF__form_input :-moz-placeholder,
.DF__form_textarea :-moz-placeholder {
  opacity: 1;
}
.DF__form_input ::-moz-placeholder,
.DF__form_textarea ::-moz-placeholder {
  opacity: 1;
}
.DF__form_input :-ms-input-placeholder,
.DF__form_textarea :-ms-input-placeholder {
  opacity: 1;
}
.DF__form_input ::placeholder,
.DF__form_textarea ::placeholder {
  opacity: 1;
}

.DF__form_button {
  cursor: pointer;
}

/* Customize the label (the container) */
.DF__checkbox_radio_container {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default checkbox */
.DF__checkbox_radio_container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.DF__checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  background-color: #eee;
}

.DF__radio_container .DF__checkmark {
  border-radius: 50%;
}

/* On mouse-over, add a grey background color */
.DF__checkbox_radio_container:hover input ~ .DF__checkmark {
  background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.DF__checkbox_radio_container input:checked ~ .DF__checkmark {
  background-color: #2196F3;
}

/* Create the checkmark/indicator (hidden when not checked) */
.DF__checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.DF__checkbox_radio_container input:checked ~ .DF__checkmark:after {
  display: block;
}

/* Style the checkmark/indicator */
.DF__checkbox_container .DF__checkmark:after {
  left: 9px;
  top: 5px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* Style the checkmark/indicator */
.DF__radio_container .DF__checkmark:after {
  left: 9px;
  top: 9px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: white;
}

.element-wrapper {
  display: flex;
}
.element-wrapper .project-links {
  margin-top: 4.6120058565vw;
  margin-bottom: 4.6120058565vw;
}
@media (min-width: 1921px) {
  .element-wrapper .project-links {
    margin-top: 88.5505124451px;
    margin-bottom: 88.5505124451px;
  }
}
.element-wrapper .faded {
  opacity: 1 !important;
}

.element-wrapper--pad-above .project-links {
  margin-top: 9.224011713vw;
}
@media (min-width: 1921px) {
  .element-wrapper--pad-above .project-links {
    margin-top: 177.1010248902px;
  }
}

.element-wrapper--pad-below .project-links {
  margin-bottom: 9.224011713vw;
}
@media (min-width: 1921px) {
  .element-wrapper--pad-below .project-links {
    margin-bottom: 177.1010248902px;
  }
}

.related-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 73.2064421669vw;
  grid-gap: 4.6120058565vw;
  margin-top: 4.6120058565vw;
  padding-top: 9.224011713vw;
  padding-bottom: 9.224011713vw;
}
@media (max-width: 767px) and (orientation:portrait) {
  .related-grid {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}
@media (min-width: 1921px) {
  .related-grid {
    width: 1405.5636896047px;
    grid-gap: 88.5505124451px;
    margin-top: 88.5505124451px;
    padding-top: 177.1010248902px;
    padding-bottom: 177.1010248902px;
  }
}
.related-grid .link-block--related img {
  width: 100%;
}
.related-grid .link-title {
  opacity: 1;
  margin-top: 0.75em;
}

html {
  height: 100%;
  -webkit-text-size-adjust: none;
}
body {
  display: flex;
  flex-direction: column;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  overflow-y: scroll;
  overflow-x: hidden;
}

body.overlay-open {
  overflow: hidden;
  position: fixed;
}
body.overlay-open main {
  opacity: 0;
}

main {
  flex: 1 0 auto;
  position: relative;
}

.locked {
  overflow: hidden;
  overflow-y: hidden;
  position: relative;
  touch-action: none;
  -ms-touch-action: none;
}

.inner {
  position: relative;
  margin: auto;
  width: 92.2401171303vw;
}
@media (min-width: 1921px) {
  .inner {
    width: 1771.0102489019px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .inner {
    width: 82.6666666667vw;
  }
}

.outer {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

@media (max-width: 767px) and (orientation:landscape) {
  .hide-on-desktop, .hod {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 1366px), null, (min-width: 1367px) and (max-width: 1920px), (min-width: 1921px) {
  .hide-on-desktop, .hod {
    display: none !important;
  }
}

@media (orientation:portrait) and (max-width: 767px) {
  .hide-on-mobile, .hom {
    display: none !important;
  }
}

.big {
  font-size: 1.2445095168vw;
  line-height: 1.5373352855vw;
}
@media (min-width: 1921px) {
  .big {
    font-size: 23.8945827233px;
    line-height: 29.5168374817px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .big {
    font-size: 3.536vw;
    line-height: 4.368vw;
  }
}

.big.reduce {
  font-size: 1.0980966325vw;
  line-height: 1.317715959vw;
}
@media (min-width: 1921px) {
  .big.reduce {
    font-size: 21.0834553441px;
    line-height: 25.3001464129px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .big.reduce {
    font-size: 3.536vw;
    line-height: 4.368vw;
  }
}

.small {
  font-size: 0.878477306vw;
  line-height: 1.0980966325vw;
}
@media (min-width: 1921px) {
  .small {
    font-size: 16.8667642753px;
    line-height: 21.0834553441px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .small {
    font-size: 3.536vw;
    line-height: 4.368vw;
  }
}

.ff--14-18 {
  font-size: 1.0248901903vw;
  line-height: 1.317715959vw;
}
@media (min-width: 1921px) {
  .ff--14-18 {
    font-size: 19.6778916545px;
    line-height: 25.3001464129px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .ff--14-18 {
    font-size: 3.536vw;
    line-height: 4.368vw;
  }
}

@media (max-width: 767px) and (orientation:landscape) {
  .hide-on-desktop {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 1366px), (min-width: 1367px) and (max-width: 1920px), (min-width: 1921px) {
  .hide-on-desktop {
    display: none !important;
  }
}

@media (orientation:portrait) and (max-width: 767px) {
  .hide-on-mobile {
    display: none !important;
  }
}

header {
  margin-left: calc(50vw - 50%);
  margin-right: calc(50vw - 50%);
  width: 92.2401171303vw;
  position: absolute;
  z-index: 20;
  height: 1.9765739385vw;
  padding-top: 3.8799414348vw;
  padding-bottom: 4.1727672035vw;
}
@media (min-width: 1921px) {
  header {
    width: 1771.0102489019px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  header {
    width: 82.6666666667vw;
  }
}
@media (min-width: 1921px) {
  header {
    height: 37.9502196193px;
    padding-top: 74.494875549px;
    padding-bottom: 80.1171303075px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  header {
    height: 3.6vw;
    padding-top: 8.6666666667vw;
    padding-bottom: 12.9333333333vw;
  }
}

.header-push {
  position: relative;
  height: 10.0292825769vw;
}
@media (min-width: 1921px) {
  .header-push {
    height: 192.5622254758px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .header-push {
    height: 25.2vw;
  }
}

#logotype, #hamburger {
  position: absolute;
  z-index: 200;
  height: 1.9765739385vw;
  padding-top: 3.8799414348vw;
}
@media (min-width: 1921px) {
  #logotype, #hamburger {
    height: 37.9502196193px;
    padding-top: 74.494875549px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #logotype, #hamburger {
    height: 3.6vw;
    padding-top: 8.6666666667vw;
  }
}
#logotype svg, #hamburger svg {
  height: 100%;
}

#logotype {
  left: calc(50vw - 46.6691068814vw);
}
@media (min-width: 1921px) {
  #logotype {
    left: calc(50vw - 896.046852123px);
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #logotype {
    left: calc(50vw - 42.3333333333vw);
  }
}

#hamburger {
  right: calc(50vw - 46.6691068814vw);
}
@media (min-width: 1921px) {
  #hamburger {
    right: calc(50vw - 896.046852123px);
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #hamburger {
    right: calc(50vw - 42.3333333333vw);
    height: 7.2vw;
  }
}

.invert {
  transition: filter 0.4s ease;
  filter: invert(1);
}

.uninvert {
  filter: invert(0);
}

nav, #overlay-container {
  transition: all 0.4s ease;
  display: none;
  position: fixed;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  width: 100%;
  top: 0;
  background: rgb(235, 235, 235);
  z-index: 101;
}

#logotype {
  z-index: 100;
}
@media (max-width: 767px) and (orientation:portrait) {
  #logotype {
    width: 53.3333333333vw;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #logotype img {
    width: 100%;
  }
}
#logotype svg, #logotype object {
  pointer-events: none;
  height: 100%;
}

#overlay-container.open {
  display: block;
}

nav {
  background: transparent;
  position: absolute;
}
nav a {
  display: block;
}

nav.open {
  display: block;
}

nav .inner {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  height: 100vh;
}

.navlink {
  display: inline-block;
  border-bottom: 1px solid transparent;
}
@media (max-width: 767px) and (orientation:portrait) {
  .navlink {
    margin-left: 0vw;
  }
}

.navlink.active {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.1em;
}

footer {
  flex-shrink: 0;
  overflow: hidden;
  background: #f7f7f7;
  color: #050505;
  margin-top: 6.149341142vw;
  padding-top: 3.074670571vw;
  padding-bottom: 3.074670571vw;
}
@media (min-width: 1921px) {
  footer {
    margin-top: 118.0673499268px;
    padding-top: 59.0336749634px;
    padding-bottom: 59.0336749634px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  footer {
    margin-top: 16vw;
    padding-top: 5.3333333333vw;
    padding-bottom: 5.3333333333vw;
  }
}

.footer--no-margin-top {
  margin-top: 0;
}

@media (max-width: 767px) and (orientation:portrait) {
  footer.sticky {
    position: -webkit-sticky; /* Safari */
    position: sticky;
    bottom: 0;
  }
}

.footer-grid {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 14.6412884334vw;
}
@media (min-width: 1921px) {
  .footer-grid {
    margin-bottom: 281.1127379209px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .footer-grid {
    grid-template-columns: repeat(1, minmax(0, 1fr));
    grid-row-gap: 1.5em;
    margin-bottom: 13.3333333333vw;
  }
}

.grid-item {
  padding-right: 2.196193265vw;
}
@media (min-width: 1921px) {
  .grid-item {
    padding-right: 42.1669106881px;
  }
}

#telephone, #instagram {
  padding-bottom: 0.2196193265vw;
}
@media (min-width: 1921px) {
  #telephone, #instagram {
    padding-bottom: 4.2166910688px;
  }
}

.slideshow {
  opacity: 0;
}

.main-media {
  width: 73.7920937042vw;
  height: 41.5080527086vw;
}
@media (min-width: 1921px) {
  .main-media {
    width: 1416.8081991215px;
    height: 796.9546120059px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .main-media {
    width: 82.6666666667vw;
    margin-top: 12.5333333333vw;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .main-media {
    height: auto;
  }
}
.main-media .slide img {
  height: 41.5080527086vw;
}
@media (min-width: 1921px) {
  .main-media .slide img {
    height: 796.9546120059px;
  }
}

.media-block {
  position: relative;
}

.DF__vimeo_pro, .vimeo-pro {
  position: absolute;
  max-height: 100%;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.controls .DF__vimeo_pro {
  height: calc(100% - 2vw);
}
@media (min-width: 1921px) {
  .controls .DF__vimeo_pro {
    height: calc(100% - 35.1390922401px);
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .controls .DF__vimeo_pro {
    height: calc(100% - 6.6666666667vw);
  }
}

.DF__vimeo_wrapper {
  position: absolute;
  top: 0;
  left: 0;
  /*
  Used to calculate a padded box based it padding at 100%
  */
  width: 100%;
  padding-top: 56.25%;
}

.content {
  position: relative;
  height: 41.5080527086vw;
}
@media (min-width: 1921px) {
  .content {
    height: 796.9546120059px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .content {
    height: auto;
  }
}
.content .copy-column {
  position: absolute;
  width: 15.7393850659vw;
  bottom: 0vw;
  left: 0vw;
}
@media (min-width: 1921px) {
  .content .copy-column {
    width: 302.196193265px;
    bottom: 0px;
    left: 0px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .content .copy-column {
    margin-top: 8.2666666667vw;
    width: 82.6666666667vw;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .content .copy-column {
    position: relative;
  }
}
.content .big, .content .small {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  float: left;
  width: 15.7393850659vw;
}
@media (min-width: 1921px) {
  .content .big, .content .small {
    width: 302.196193265px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .content .big, .content .small {
    width: auto;
  }
}

.m-bottom {
  margin-bottom: 3.074670571vw;
}
@media (min-width: 1921px) {
  .m-bottom {
    margin-bottom: 59.0336749634px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .m-bottom {
    margin-bottom: 8.2666666667vw;
  }
}

.m-top {
  margin-top: 3.074670571vw;
}
@media (min-width: 1921px) {
  .m-top {
    margin-top: 59.0336749634px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .m-top {
    margin-top: 8.2666666667vw;
  }
}

.vimeo-controls.small {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding-top: 0.7320644217vw;
}
@media (max-width: 767px) and (orientation:portrait) {
  .vimeo-controls.small {
    display: block;
  }
}
@media (min-width: 1921px) {
  .vimeo-controls.small {
    padding-top: 14.055636896px;
  }
}
.vimeo-controls.small .play-pause, .vimeo-controls.small .ticker, .vimeo-controls.small .progress-bar, .vimeo-controls.small .sound, .vimeo-controls.small .fullscreen {
  display: inline-block;
}
@media (max-width: 767px) and (orientation:portrait) {
  .vimeo-controls.small .play-pause, .vimeo-controls.small .ticker, .vimeo-controls.small .progress-bar, .vimeo-controls.small .sound, .vimeo-controls.small .fullscreen {
    margin-top: 4vw;
  }
}
.vimeo-controls.small .play-pause {
  margin-right: 0.7320644217vw;
  width: 2.5622254758vw;
}
@media (min-width: 1921px) {
  .vimeo-controls.small .play-pause {
    margin-right: 14.055636896px;
    width: 49.1947291362px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .vimeo-controls.small .play-pause {
    margin-right: 3.4666666667vw;
    width: 8.6666666667vw;
  }
}
.vimeo-controls.small .ticker {
  margin-right: 0.7320644217vw;
  width: 5.1244509517vw;
}
@media (min-width: 1921px) {
  .vimeo-controls.small .ticker {
    margin-right: 14.055636896px;
    width: 98.3894582723px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .vimeo-controls.small .ticker {
    margin-right: 1.7333333333vw;
    width: 17.3333333333vw;
  }
}
.vimeo-controls.small .progress-bar {
  display: inline-block;
  position: relative;
  flex-grow: 100;
  height: 0.8052708638vw;
  margin-top: 0.3660322108vw;
}
@media (min-width: 1921px) {
  .vimeo-controls.small .progress-bar {
    height: 15.4612005857px;
    margin-top: 7.027818448px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .vimeo-controls.small .progress-bar {
    position: absolute;
    flex-grow: initial;
    width: 100%;
    height: 2.1333333333vw;
    top: 1.3333333333vw;
    left: 0;
  }
}
.vimeo-controls.small .progress-bar .progress-back {
  background: rgb(235, 235, 235);
  position: absolute;
  width: 100%;
  z-index: 0;
  top: 0.3660322108vw;
  height: 0.0732064422vw;
}
@media (min-width: 1921px) {
  .vimeo-controls.small .progress-bar .progress-back {
    top: 7.027818448px;
    height: 1.4055636896px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .vimeo-controls.small .progress-bar .progress-back {
    top: 1.0666666667vw;
    height: 0.1333333333vw;
  }
}
.vimeo-controls.small .progress-bar .progress {
  border-right-style: solid;
  border-right-color: black;
  width: 0%;
  position: relative;
  padding-top: 0.3660322108vw;
  padding-bottom: 0.3660322108vw;
  border-right-width: 0.0732064422vw;
}
@media (min-width: 1921px) {
  .vimeo-controls.small .progress-bar .progress {
    padding-top: 7.027818448px;
    padding-bottom: 7.027818448px;
    border-right-width: 1.4055636896px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .vimeo-controls.small .progress-bar .progress {
    padding-top: 1.0666666667vw;
    padding-bottom: 1.0666666667vw;
    border-right-width: 0.1333333333vw;
  }
}
.vimeo-controls.small .progress-bar .progress .inner-progress {
  position: absolute;
  width: 100%;
  z-index: 1;
  background: black;
  height: 0.0732064422vw;
}
@media (min-width: 1921px) {
  .vimeo-controls.small .progress-bar .progress .inner-progress {
    height: 1.4055636896px;
  }
}
.vimeo-controls.small .sound, .vimeo-controls.small .fullscreen {
  margin-left: 2.196193265vw;
}
@media (min-width: 1921px) {
  .vimeo-controls.small .sound, .vimeo-controls.small .fullscreen {
    margin-left: 42.1669106881px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .vimeo-controls.small .sound, .vimeo-controls.small .fullscreen {
    position: absolute;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .vimeo-controls.small .fullscreen {
    right: 0;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .vimeo-controls.small .sound {
    right: 22.5333333333vw;
  }
}
.vimeo-controls.small .sound.muted {
  opacity: 0.5;
}

.video-padbox {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
@media (max-width: 767px) and (orientation:portrait) {
  .video-padbox {
    width: 82.6666666667vw;
    height: 46.5333333333vw;
    padding-top: 0vw;
  }
}

@media (max-width: 767px) and (orientation:portrait) {
  .video-padbox.controls {
    width: 82.6666666667vw;
    height: 54vw;
  }
}

#about-content {
  padding-top: 12.5915080527vw;
}
@media (min-width: 1921px) {
  #about-content {
    padding-top: 241.756954612px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #about-content {
    padding-top: 25.8666666667vw;
  }
}
#about-content .copy-column {
  display: inline-block;
  column-count: 2;
  margin-right: 3.2942898975vw;
  width: 42.8257686676vw;
  column-gap: 3.2942898975vw;
}
@media (min-width: 1921px) {
  #about-content .copy-column {
    margin-right: 63.2503660322px;
    width: 822.2547584187px;
    column-gap: 63.2503660322px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #about-content .copy-column {
    width: 100%;
    column-count: 1;
  }
}
#about-content .media-block {
  display: inline-block;
  width: 46.1200585652vw;
  height: 25.9882869693vw;
}
@media (min-width: 1921px) {
  #about-content .media-block {
    width: 885.505124451px;
    height: 498.9751098097px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #about-content .media-block {
    width: 82.6666666667vw;
  }
}
#about-content .media-block img {
  width: 100%;
}
@media (max-width: 767px) and (orientation:portrait) {
  #about-content .media-block {
    height: auto;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #about-content .mobile-copy {
    padding-top: 8.2666666667vw;
  }
}

.map {
  height: 100%;
  width: 100%;
}

@media (max-width: 767px) and (orientation:portrait) {
  #contact-content .map {
    margin-top: 25.8666666667vw;
    height: 46.5333333333vw;
    width: 82.6666666667vw;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #contact-content .main-media {
    margin-top: 0;
    height: auto;
  }
}
#contact-content .copy-column {
  position: absolute;
  top: auto;
  bottom: 0vw;
  left: 0vw;
}
@media (min-width: 1921px) {
  #contact-content .copy-column {
    bottom: 0px;
    left: 0px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #contact-content .copy-column {
    position: relative;
    width: auto;
  }
}
#contact-content .contact-telephone, #contact-content .contact-address {
  padding-bottom: 0.5124450952vw;
}
@media (min-width: 1921px) {
  #contact-content .contact-telephone, #contact-content .contact-address {
    padding-bottom: 9.8389458272px;
  }
}

.slide-overlay-left {
  width: 50%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: transparent;
  z-index: 2;
}
@media (max-width: 767px) and (orientation:portrait) {
  .slide-overlay-left {
    z-index: -1;
    cursor: auto !important;
  }
}

.slide-overlay-right {
  width: 50%;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  background: transparent;
  z-index: 2;
}
@media (max-width: 767px) and (orientation:portrait) {
  .slide-overlay-right {
    z-index: -1;
    cursor: auto !important;
  }
}

.slick-list, .slick-track, .slick-slide {
  height: 41.5080527086vw;
}
@media (min-width: 1921px) {
  .slick-list, .slick-track, .slick-slide {
    height: 796.9546120059px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .slick-list, .slick-track, .slick-slide {
    height: 46.5333333333vw;
  }
}

#project-video {
  z-index: 0;
  opacity: 0;
  position: absolute;
  height: 41.5080527086vw;
  width: 73.7920937042vw;
  right: 0;
}
@media (min-width: 1921px) {
  #project-video {
    height: 796.9546120059px;
    width: 1416.8081991215px;
  }
}

#project-slideshow {
  z-index: 2;
  position: relative;
}

#project-gallery {
  z-index: 0;
  opacity: 0;
  position: absolute;
  height: 41.5080527086vw;
  width: 73.7920937042vw;
  right: 0;
  top: 0;
}
@media (min-width: 1921px) {
  #project-gallery {
    height: 796.9546120059px;
    width: 1416.8081991215px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #project-gallery {
    position: relative;
    opacity: 1;
    z-index: auto;
    right: auto;
    top: auto;
    height: auto;
  }
}
#project-gallery .slideshow {
  z-index: 1;
  position: relative;
  height: 41.5080527086vw;
  width: 73.7920937042vw;
}
@media (min-width: 1921px) {
  #project-gallery .slideshow {
    height: 796.9546120059px;
    width: 1416.8081991215px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #project-gallery .slideshow {
    height: 46.5333333333vw;
    width: 82.6666666667vw;
  }
}
#project-gallery div:last-child {
  margin-bottom: 0;
}
#project-gallery .slide {
  position: absolute;
  height: 100%;
  width: auto;
  top: 0;
  left: 0;
}
@media (max-width: 767px) and (orientation:portrait) {
  #project-gallery .slide {
    position: relative;
    height: 46.5333333333vw;
    margin-bottom: 8.2666666667vw;
    z-index: 3;
    opacity: 1;
  }
}
#project-gallery .slide img {
  height: 100%;
}
#project-gallery .slide.first {
  z-index: 10;
}

.project-nav {
  position: absolute;
  bottom: 0;
}
@media (max-width: 767px) and (orientation:portrait) {
  .project-nav {
    position: relative;
  }
}

#slick-overlay-wrapper {
  display: none;
  position: fixed;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  min-height: 100vh;
  width: 100vw;
  z-index: 20;
}

#slick-overlay {
  display: none;
  position: fixed;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  width: 100vw;
  overflow: hidden;
}
#slick-overlay .slick-track, #slick-overlay .slick-list {
  height: 100%;
}

.slick-wrapper {
  display: none;
  margin: auto;
  height: 100%;
  width: 100%;
  background: white;
  padding: 3.8799414348vw;
}
@media (min-width: 1921px) {
  .slick-wrapper {
    padding: 74.494875549px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .slick-wrapper {
    padding: 8.6666666667vw;
  }
}

.slick-closer {
  position: absolute;
  transform: rotate(45deg);
  z-index: 21;
  bottom: 3.8799414348vw;
  right: 3.8799414348vw;
  height: 1.9765739385vw;
}
@media (min-width: 1921px) {
  .slick-closer {
    bottom: 74.494875549px;
    right: 74.494875549px;
    height: 37.9502196193px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .slick-closer {
    bottom: 8.6666666667vw;
    right: 8.6666666667vw;
    height: 3.6vw;
  }
}
.slick-closer img {
  height: 100%;
}

.slick-img {
  max-width: 100%;
  max-height: 100%;
}

.project-title {
  position: relative;
  text-align: center;
}
.project-title:after {
  content: "";
  display: block;
  position: absolute;
  height: 0;
  width: 90%;
  bottom: -0.1em;
  left: 5%;
  border-bottom: 1px solid black;
}

.project-title--fw-underline:after {
  width: 100%;
  left: 0;
}

.homepage--splash {
  height: 100vh;
  transition: height 0.4s ease;
  height: calc(var(--vh, 1vh) * 100);
  width: 100vw;
  margin-bottom: 3.6603221083vw;
}
@media (min-width: 1921px) {
  .homepage--splash {
    margin-bottom: 70.2781844802px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .homepage--splash {
    margin-bottom: 13.3333333333vw;
  }
}
.homepage--splash .slideshow {
  height: 100%;
  width: 100%;
}
.homepage--splash .slick-list, .homepage--splash .slick-track, .homepage--splash .slick-slide, .homepage--splash .slide {
  height: 100vh;
  transition: height 0.4s ease;
  height: calc(var(--vh, 1vh) * 100);
}
.homepage--splash video {
  height: 100%;
  width: 100%;
}
.homepage--splash .vimeo-pro {
  position: relative;
  height: 100%;
  width: 100%;
}
.homepage--splash .slick-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  z-index: 100;
  bottom: 3.6603221083vw;
  height: 0.7320644217vw;
}
@media (min-width: 1921px) {
  .homepage--splash .slick-dots {
    bottom: 70.2781844802px;
    height: 14.055636896px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .homepage--splash .slick-dots {
    bottom: 13.3333333333vw;
    height: 1.3333333333vw;
  }
}
.homepage--splash .slick-dots li {
  display: inline-flex;
  border-radius: 50%;
  background: white;
  transition: width 0.4s ease, height 0.4s ease, margin 0.4s ease;
  width: 0.3660322108vw;
  height: 0.3660322108vw;
  margin: 1.0980966325vw;
}
@media (min-width: 1921px) {
  .homepage--splash .slick-dots li {
    width: 7.027818448px;
    height: 7.027818448px;
    margin: 21.0834553441px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .homepage--splash .slick-dots li {
    width: 0.6666666667vw;
    height: 0.6666666667vw;
    margin: 2vw;
  }
}
.homepage--splash .slick-dots button {
  display: none;
}
.homepage--splash .slick-dots li.slick-active {
  width: 0.7320644217vw;
  height: 0.7320644217vw;
  margin: 0.7320644217vw;
}
@media (min-width: 1921px) {
  .homepage--splash .slick-dots li.slick-active {
    width: 14.055636896px;
    height: 14.055636896px;
    margin: 14.055636896px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .homepage--splash .slick-dots li.slick-active {
    width: 1.3333333333vw;
    height: 1.3333333333vw;
    margin: 1.3333333333vw;
  }
}

.tint {
  filter: brightness(0.95);
}

.homepage--splash-logo {
  z-index: 1;
  filter: invert(1);
  position: absolute;
  top: 0;
  overflow: hidden;
  pointer-events: none;
}
.homepage--splash-logo .splash-svg svg {
  margin: auto;
  width: 63.6896046852vw;
}
@media (min-width: 1921px) {
  .homepage--splash-logo .splash-svg svg {
    width: 1222.8404099561px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .homepage--splash-logo .splash-svg svg {
    width: 85.3333333333vw;
  }
}

.page__description {
  font-size: 2.0497803807vw;
  line-height: 2.7818448023vw;
  margin-bottom: 4.6120058565vw;
}
@media (min-width: 1921px) {
  .page__description {
    font-size: 39.3557833089px;
    line-height: 53.411420205px;
    margin-bottom: 88.5505124451px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .page__description {
    font-size: 3.4666666667vw;
    line-height: 4vw;
    margin-bottom: 8.4vw;
  }
}

#news-container {
  margin-bottom: 9.224011713vw;
}
@media (min-width: 1921px) {
  #news-container {
    margin-bottom: 177.1010248902px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #news-container {
    margin-bottom: 8.2666666667vw;
  }
}
#news-container .slick-list, #news-container .slick-track, #news-container .slick-slide {
  height: 39.5314787701vw;
}
@media (min-width: 1921px) {
  #news-container .slick-list, #news-container .slick-track, #news-container .slick-slide {
    height: 759.0043923865px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #news-container .slick-list, #news-container .slick-track, #news-container .slick-slide {
    height: 46.5333333333vw;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #news-container .slide {
    height: 100%;
  }
  #news-container .slide img {
    width: 100%;
  }
}
#news-container .slideshow {
  margin: auto;
  position: relative;
  width: 43.0453879941vw;
}
@media (min-width: 1921px) {
  #news-container .slideshow {
    width: 826.4714494876px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #news-container .slideshow {
    height: 85.6vw;
    width: 82.6666666667vw;
    margin-left: 0vw;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #news-container .slideshow .slick-list, #news-container .slideshow .slick-track, #news-container .slideshow .slick-slide {
    width: 82.6666666667vw;
    margin-left: 0vw;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #news-container .slideshow .slick-list div, #news-container .slideshow .slick-list img, #news-container .slideshow .slick-track div, #news-container .slideshow .slick-track img, #news-container .slideshow .slick-slide div, #news-container .slideshow .slick-slide img {
    width: 100%;
  }
}
#news-container .news-content, #news-container .news-content .bottom-copy {
  position: relative;
  margin-top: 1.3909224012vw;
}
@media (min-width: 1921px) {
  #news-container .news-content, #news-container .news-content .bottom-copy {
    margin-top: 26.7057101025px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #news-container .news-content, #news-container .news-content .bottom-copy {
    margin-top: 2.5333333333vw;
    height: 38.6666666667vw;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #news-container .news-content, #news-container .news-content .bottom-copy {
    position: relative;
    height: auto;
    width: calc(100% - 5.6vw) !important;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #news-container .news-content .big, #news-container .news-content .bottom-copy .big {
    margin-bottom: 2.8vw;
  }
}
#news-container .news-content .counter, #news-container .news-content .bottom-copy .counter {
  display: block;
  margin-top: 9.224011713vw;
  margin-bottom: 9.224011713vw;
  left: 0vw;
}
@media (min-width: 1921px) {
  #news-container .news-content .counter, #news-container .news-content .bottom-copy .counter {
    margin-top: 177.1010248902px;
    margin-bottom: 177.1010248902px;
    left: 0px;
  }
}
#news-container .news-content .bottom-copy, #news-container .news-content .bottom-copy .bottom-copy {
  display: block;
  bottom: 0;
}
@media (max-width: 767px) and (orientation:portrait) {
  #news-container .news-content .bottom-copy, #news-container .news-content .bottom-copy .bottom-copy {
    position: relative;
    bottom: auto;
  }
}
#news-container .news-content .bottom-copy .big, #news-container .news-content .bottom-copy .bottom-copy .big {
  margin-bottom: 2.8550512445vw;
}
@media (min-width: 1921px) {
  #news-container .news-content .bottom-copy .big, #news-container .news-content .bottom-copy .bottom-copy .big {
    margin-bottom: 54.8169838946px;
  }
}
#news-container .slick-track {
  display: flex !important;
}
#news-container .slick-slide, #news-container .slideshow, #news-container .slick-list, #news-container .slick-track {
  height: inherit !important;
}

.slide-description {
  margin-top: 3.2942898975vw;
}
@media (min-width: 1921px) {
  .slide-description {
    margin-top: 63.2503660322px;
  }
}

.slide-description:not(.active) {
  display: none;
}

.project-links {
  left: 0;
  width: 100%;
  display: block;
  position: relative;
  margin-bottom: 9.224011713vw;
}
.project-links img {
  max-width: 100%;
  max-height: 100%;
}
@media (min-width: 1921px) {
  .project-links {
    margin-bottom: 177.1010248902px;
  }
}
.project-links .link-block {
  position: absolute;
}
.project-links .link-block img {
  height: 100%;
}
.project-links .link-title {
  margin-top: 1.2445095168vw;
}
@media (min-width: 1921px) {
  .project-links .link-title {
    margin-top: 23.8945827233px;
  }
}

.project-links.last {
  margin-bottom: 0;
}

.project-links.wide, .project-links.landscape, .project-links.square {
  height: 29.055636896vw;
}
@media (min-width: 1921px) {
  .project-links.wide, .project-links.landscape, .project-links.square {
    height: 557.8682284041px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .project-links.wide, .project-links.landscape, .project-links.square {
    height: 49.6vw;
  }
}

@media (max-width: 767px) and (orientation:portrait) {
  .project-links.wide {
    height: 46.5333333333vw;
  }
}

.project-links.short {
  height: 21.5226939971vw;
}
@media (min-width: 1921px) {
  .project-links.short {
    height: 413.2357247438px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .project-links.short {
    height: 46.5333333333vw;
  }
}

.link-block.wide {
  width: 51.654465593vw;
  height: 29.055636896vw;
}
@media (min-width: 1921px) {
  .link-block.wide {
    width: 991.7657393851px;
    height: 557.8682284041px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.wide {
    width: 82.6666666667vw;
    height: 46.5333333333vw;
  }
}

.project-links.copy {
  height: auto;
}

.link-block.copy {
  width: 51.654465593vw;
  height: auto;
  position: relative;
}
@media (min-width: 1921px) {
  .link-block.copy {
    width: 991.7657393851px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.copy {
    width: 82.6666666667vw;
  }
}

.link-block.square {
  width: 29.055636896vw;
  height: 29.055636896vw;
}
@media (min-width: 1921px) {
  .link-block.square {
    width: 557.8682284041px;
    height: 557.8682284041px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.square {
    width: 49.6vw;
    height: 49.6vw;
  }
}

.link-block.short {
  width: 30.1317715959vw;
  height: 21.5226939971vw;
}
@media (min-width: 1921px) {
  .link-block.short {
    width: 578.5300146413px;
    height: 413.2357247438px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.short {
    width: 82.6666666667vw;
    height: 46.5333333333vw;
  }
}

.link-block.align-right {
  left: auto;
  margin-left: auto;
  right: 0vw;
}
@media (min-width: 1921px) {
  .link-block.align-right {
    right: 0px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.align-right {
    right: 0vw;
  }
}

.link-block.align-center {
  right: auto;
  left: 50%;
  transform: translateX(-50%);
}

.link-block.align-left {
  right: auto;
  left: 0vw;
}
@media (min-width: 1921px) {
  .link-block.align-left {
    left: 0px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.align-left {
    left: 0vw;
  }
}

.link-block.landscape {
  width: 40.8931185944vw;
  height: 29.055636896vw;
}
@media (min-width: 1921px) {
  .link-block.landscape {
    width: 785.1478770132px;
    height: 557.8682284041px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.landscape {
    width: 69.8666666667vw;
    height: 49.6vw;
  }
}
@media null and (max-width: 767px) {
  .link-block.landscape {
    right: auto;
    left: 50%;
    transform: translateX(-50%);
  }
}

.link-block.short {
  width: 30.1317715959vw;
}
@media (min-width: 1921px) {
  .link-block.short {
    width: 578.5300146413px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.short {
    width: 69.8666666667vw;
    height: 49.6vw;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.short {
    height: 49.6vw;
  }
}

.project-links.dual_big_sq, .project-links.dual_portraits {
  height: 52.7818448023vw;
}
@media (min-width: 1921px) {
  .project-links.dual_big_sq, .project-links.dual_portraits {
    height: 1013.411420205px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .project-links.dual_big_sq, .project-links.dual_portraits {
    height: 132.2666666667vw;
  }
}

.project-links.dual_small_sq {
  height: 38.7408491947vw;
}
@media (min-width: 1921px) {
  .project-links.dual_small_sq {
    height: 743.8243045388px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .project-links.dual_small_sq {
    height: 132.2666666667vw;
  }
}

.project-links.dual_big_sq.offset-center {
  height: 38.7408491947vw;
}
@media (min-width: 1921px) {
  .project-links.dual_big_sq.offset-center {
    height: 743.8243045388px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .project-links.dual_big_sq.offset-center {
    height: 132.2666666667vw;
  }
}

.link-block.dual_small_sq.first {
  height: 100%;
  top: 0;
  left: 11.0688140556vw;
}
@media (min-width: 1921px) {
  .link-block.dual_small_sq.first {
    left: 212.5212298682px;
  }
}
@media (orientation:portrait) and (max-width: 767px) {
  .link-block.dual_small_sq.first {
    height: 74.4vw;
    left: auto;
    top: 0;
    left: 0;
  }
}

.link-block.dual_portraits.first {
  height: 100%;
  top: 0;
  left: 6.4568081991vw;
}
@media (min-width: 1921px) {
  .link-block.dual_portraits.first {
    left: 123.9707174231px;
  }
}
@media (orientation:portrait) and (max-width: 767px) {
  .link-block.dual_portraits.first {
    height: 74.4vw;
    left: auto;
    top: 0;
    left: 0;
  }
}

.link-block.dual_small_sq.second {
  right: 13.8360175695vw;
  top: 9.121522694vw;
  height: 21.5226939971vw;
}
@media (min-width: 1921px) {
  .link-block.dual_small_sq.second {
    right: 265.6515373353px;
    top: 175.1332357247px;
    height: 413.2357247438px;
  }
}
@media (orientation:portrait) and (max-width: 767px) {
  .link-block.dual_small_sq.second {
    right: 0;
    top: auto;
    bottom: 0;
    height: 49.6vw;
  }
}

.link-block.dual_portraits.second {
  right: 6.4568081991vw;
  top: 10.1464128843vw;
  height: 32.2840409956vw;
  width: 21.5226939971vw;
}
@media (min-width: 1921px) {
  .link-block.dual_portraits.second {
    right: 123.9707174231px;
    top: 194.8111273792px;
    height: 619.8535871157px;
    width: 413.2357247438px;
  }
}
@media (orientation:portrait) and (max-width: 767px) {
  .link-block.dual_portraits.second {
    right: 0;
    top: auto;
    bottom: 0;
    height: 49.6vw;
    width: 33.0666666667vw;
  }
}

.project-links.video_small_sq {
  height: 29.055636896vw;
}
@media (min-width: 1921px) {
  .project-links.video_small_sq {
    height: 557.8682284041px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .project-links.video_small_sq {
    height: 105.3333333333vw;
  }
}

.link-block.video_small_sq.second {
  right: 4.6120058565vw;
  top: 3.7664714495vw;
  height: 21.5226939971vw;
}
@media (min-width: 1921px) {
  .link-block.video_small_sq.second {
    right: 88.5505124451px;
    top: 72.3162518302px;
    height: 413.2357247438px;
  }
}
@media (orientation:portrait) and (max-width: 767px) {
  .link-block.video_small_sq.second {
    right: 0;
    top: auto;
    bottom: 0;
    height: 49.6vw;
  }
}

.link-block.dual_big_sq.first {
  bottom: 0;
  left: 10.0219619327vw;
  height: 38.7408491947vw;
  width: 25.8272327965vw;
}
@media (min-width: 1921px) {
  .link-block.dual_big_sq.first {
    left: 192.4216691069px;
    height: 743.8243045388px;
    width: 495.8828696925px;
  }
}
.link-block.dual_big_sq.first.offset-top {
  top: 14.0409956076vw;
}
@media (min-width: 1921px) {
  .link-block.dual_big_sq.first.offset-top {
    top: 269.5871156662px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.dual_big_sq.first.offset-top {
    top: auto;
  }
}
.link-block.dual_big_sq.first.offset-center {
  top: 0;
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.dual_big_sq.first.offset-center {
    top: auto;
    bottom: 0;
  }
}
.link-block.dual_big_sq.first.offset-bottom {
  bottom: auto;
  top: 0;
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.dual_big_sq.first.offset-bottom {
    bottom: 0;
    top: auto;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.dual_big_sq.first {
    bottom: 0;
    left: auto;
    right: 0;
    height: 74.4vw;
    width: 49.6vw;
    top: auto;
  }
}

.link-block.dual_big_sq.second {
  right: 13.0307467057vw;
  height: 29.055636896vw;
  width: 29.055636896vw;
}
@media (min-width: 1921px) {
  .link-block.dual_big_sq.second {
    right: 250.1903367496px;
    height: 557.8682284041px;
    width: 557.8682284041px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.dual_big_sq.second {
    bottom: auto;
    left: 0;
    right: auto;
    height: 49.6vw;
    width: 49.6vw;
  }
}
.link-block.dual_big_sq.second.offset-top {
  top: 0;
}
.link-block.dual_big_sq.second.offset-center {
  top: 4.8682284041vw;
}
@media (min-width: 1921px) {
  .link-block.dual_big_sq.second.offset-center {
    top: 93.4699853587px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.dual_big_sq.second.offset-center {
    top: auto;
  }
}
.link-block.dual_big_sq.second.offset-bottom {
  top: 23.6749633968vw;
}
@media (min-width: 1921px) {
  .link-block.dual_big_sq.second.offset-bottom {
    top: 454.5592972182px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-block.dual_big_sq.second.offset-bottom {
    top: 0vw;
  }
}

#first-project .project-links.wide, #first-project .project-links.landscape, #first-project .project-links.square {
  height: 41.5080527086vw;
}
@media (min-width: 1921px) {
  #first-project .project-links.wide, #first-project .project-links.landscape, #first-project .project-links.square {
    height: 796.9546120059px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #first-project .project-links.wide, #first-project .project-links.landscape, #first-project .project-links.square {
    height: 49.6vw;
    margin-top: 8.2666666667vw;
  }
}
#first-project .link-block.wide {
  width: 73.7920937042vw;
  height: 41.5080527086vw;
}
@media (min-width: 1921px) {
  #first-project .link-block.wide {
    width: 1416.8081991215px;
    height: 796.9546120059px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #first-project .link-block.wide {
    width: 82.6666666667vw;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #first-project .project-links.wide, #first-project .link-block.wide {
    height: 46.5333333333vw;
    width: 82.6666666667vw;
  }
}
#first-project .link-block.square {
  width: 41.5080527086vw;
  height: 41.5080527086vw;
}
@media (min-width: 1921px) {
  #first-project .link-block.square {
    width: 796.9546120059px;
    height: 796.9546120059px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #first-project .link-block.square {
    width: 82.6666666667vw;
  }
}
#first-project .link-block.landscape {
  width: 58.4187408492vw;
  height: 41.5080527086vw;
}
@media (min-width: 1921px) {
  #first-project .link-block.landscape {
    width: 1121.6398243045px;
    height: 796.9546120059px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #first-project .link-block.landscape {
    width: 82.6666666667vw;
  }
}

.dual_big_sq.flip, .dual_small_sq.flip, .video_small_sq.flip {
  transform: scaleX(-1);
}
.dual_big_sq.flip .link-title, .dual_big_sq.flip img, .dual_small_sq.flip .link-title, .dual_small_sq.flip img, .video_small_sq.flip .link-title, .video_small_sq.flip img {
  transform: scaleX(-1);
}

#projects-link {
  border-bottom-style: solid;
  border-bottom-color: black;
  font-size: 2.196193265vw;
  line-height: 3.2942898975vw;
  padding-bottom: 0.3660322108vw;
  margin-bottom: 9.224011713vw;
  border-bottom-width: 0.0732064422vw;
}
@media (min-width: 1921px) {
  #projects-link {
    font-size: 42.1669106881px;
    line-height: 63.2503660322px;
    padding-bottom: 7.027818448px;
    margin-bottom: 177.1010248902px;
    border-bottom-width: 1.4055636896px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #projects-link {
    font-size: 4.8vw;
    line-height: 7.2vw;
    padding-bottom: 0.8vw;
    margin-bottom: 8.2666666667vw;
    border-bottom-width: 0.1333333333vw;
  }
}

.last .project-links {
  margin-bottom: 3.074670571vw;
}
@media (min-width: 1921px) {
  .last .project-links {
    margin-bottom: 59.0336749634px;
  }
}

.extra-space {
  height: 3.074670571vw;
}
@media (min-width: 1921px) {
  .extra-space {
    height: 59.0336749634px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .extra-space {
    height: 0;
  }
}

#projects-video .media-block {
  margin-bottom: 13.616398243vw;
  padding-top: 12.5915080527vw;
}
@media (max-width: 767px) and (orientation:portrait) {
  #projects-video .media-block {
    padding-top: 22.9333333333vw;
  }
}
@media (min-width: 1921px) {
  #projects-video .media-block {
    margin-bottom: 261.4348462665px;
    padding-top: 241.756954612px;
  }
}

@media (orientation:portrait) and (max-width: 767px) {
  .link-block.wide, .link-block.landscape, .link-block.short {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
  }
}

.link-title {
  opacity: 0;
  z-index: 11;
}
@media (max-width: 767px) and (orientation:portrait) {
  .link-title {
    opacity: 1;
  }
}

#projects-title {
  position: absolute;
}
@media (max-width: 767px) and (orientation:portrait) {
  #projects-title {
    position: relative;
  }
}

.plxR {
  opacity: 0;
  transform: translateX(2.9282576867vw);
}
@media (orientation:portrait) and (max-width: 767px) {
  .plxR {
    transform: translateX(9.3333333333vw);
  }
}
@media (min-width: 1921px) {
  .plxR {
    transform: translateX(56.2225475842px);
  }
}

.plxL {
  opacity: 0;
  transform: translateX(-2.9282576867vw);
}
@media (orientation:portrait) and (max-width: 767px) {
  .plxL {
    transform: translateX(-9.3333333333vw);
  }
}
@media (min-width: 1921px) {
  .plxL {
    transform: translateX(-56.2225475842px);
  }
}

.plxB {
  opacity: 0;
  transform: translateY(2.9282576867vw);
}
@media (orientation:portrait) and (max-width: 767px) {
  .plxB {
    transform: translateY(9.3333333333vw);
  }
}
@media (min-width: 1921px) {
  .plxB {
    transform: translateY(56.2225475842px);
  }
}

.plx.complete {
  transform: translate(0, 0);
  -webkit-transition: transform 0.8s ease, opacity 0.8s ease; /* Safari */
  transition: transform 0.8s ease, opacity 0.8s ease;
  opacity: 1;
}

#people-title {
  position: absolute;
}
@media (max-width: 767px) and (orientation:portrait) {
  #people-title {
    position: relative;
    margin-bottom: 8.2666666667vw;
  }
}

#people-content {
  position: relative;
  height: 41.5080527086vw;
  margin-bottom: 7.6866764275vw;
}
@media (min-width: 1921px) {
  #people-content {
    height: 796.9546120059px;
    margin-bottom: 147.5841874085px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #people-content {
    margin-top: 24.9333333333vw;
    width: 82.6666666667vw;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  #people-content {
    height: auto;
    margin-top: 0;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
  }
}
#people-content .copy-column {
  position: absolute;
  bottom: 0;
}
@media (max-width: 767px) and (orientation:portrait) {
  #people-content .copy-column {
    position: relative;
  }
}
#people-content .copy-column.hide-on-desktop {
  height: auto;
  margin-bottom: 8.2666666667vw;
  order: 1;
}

#group-photo img {
  width: 100%;
}
@media (max-width: 767px) and (orientation:portrait) {
  #group-photo {
    position: relative;
    margin-top: 0;
    order: 2;
  }
}

#left-people, #right-people {
  width: 34.4363103953vw;
}
@media (min-width: 1921px) {
  #left-people, #right-people {
    width: 661.17715959px;
  }
}

#left-people {
  margin-left: 8.6090775988vw;
}
@media (min-width: 1921px) {
  #left-people {
    margin-left: 165.2942898975px;
  }
}

#right-people {
  margin-right: 8.6090775988vw;
}
@media (min-width: 1921px) {
  #right-people {
    margin-right: 165.2942898975px;
  }
}

#right-people.no-photo-pull {
  margin-top: -32.2840409956vw;
}
@media (min-width: 1921px) {
  #right-people.no-photo-pull {
    margin-top: -619.8535871157px;
  }
}

#right-people.photo-push {
  margin-top: 0vw;
}
@media (min-width: 1921px) {
  #right-people.photo-push {
    margin-top: 0px;
  }
}

#left-people.photo-push {
  margin-top: 31.6251830161vw;
}
@media (min-width: 1921px) {
  #left-people.photo-push {
    margin-top: 607.2035139092px;
  }
}

.person-block {
  height: 63.2503660322vw;
}
@media (min-width: 1921px) {
  .person-block {
    height: 1214.4070278184px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .person-block {
    margin-bottom: 8.2666666667vw;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .person-block {
    height: auto;
  }
}
.person-block .person-copy, .person-block .qualifications, .person-block .copy {
  margin-top: 2.635431918vw;
}
@media (min-width: 1921px) {
  .person-block .person-copy, .person-block .qualifications, .person-block .copy {
    margin-top: 50.6002928258px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .person-block .person-copy, .person-block .qualifications, .person-block .copy {
    margin-top: 0;
  }
}
.person-block .big.qualifications {
  margin-top: 1.317715959vw;
}
@media (min-width: 1921px) {
  .person-block .big.qualifications {
    margin-top: 25.3001464129px;
  }
}
.person-block .big.name {
  font-size: 2.196193265vw;
  line-height: 2.196193265vw;
}
@media (min-width: 1921px) {
  .person-block .big.name {
    font-size: 42.1669106881px;
    line-height: 42.1669106881px;
  }
}
@media (max-width: 767px) and (orientation:portrait) {
  .person-block .big.name {
    font-size: 4.8vw;
    line-height: 4.8vw;
  }
}
.person-block img {
  width: 100%;
}
@media (max-width: 767px) and (orientation:portrait) {
  .person-block img {
    width: 82.6666666667vw;
    margin-top: 2.2666666667vw;
    margin-bottom: 2.2666666667vw;
  }
}

.person-block.last {
  margin-bottom: 0;
  height: auto;
}

.people-column .person {
  padding-top: 4.6120058565vw;
  padding-bottom: 4.6120058565vw;
}
@media (min-width: 1921px) {
  .people-column .person {
    padding-top: 88.5505124451px;
    padding-bottom: 88.5505124451px;
  }
}
.people-column .person-text-column {
  width: 32.9428989751vw;
}
@media (min-width: 1921px) {
  .people-column .person-text-column {
    width: 632.5036603221px;
  }
}
.people-column .person__inner {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-left: auto;
  margin-right: auto;
  width: 73.2064421669vw;
}
@media (min-width: 1921px) {
  .people-column .person__inner {
    width: 1405.5636896047px;
  }
}
.people-column img, .people-column .img-spacer {
  min-height: 1em;
  margin-bottom: auto;
  width: 30.7467057101vw;
  margin-left: 2.196193265vw;
}
@media (min-width: 1921px) {
  .people-column img, .people-column .img-spacer {
    width: 590.336749634px;
    margin-left: 42.1669106881px;
  }
}
.people-column .person-details {
  display: flex;
  justify-content: space-between;
}
.people-column .qualifications {
  margin-top: 0.5em;
  margin-bottom: 1.5em;
}

.person.text-left .img-spacer {
  order: 2;
}
.person.text-left img {
  order: 4;
}
.person.text-left .person-titles {
  order: 1;
}
.person.text-left .person-copy {
  order: 3;
}

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