@charset "UTF-8";
@font-face {
  font-family: "Signifier";
  font-weight: 900;
  font-style: normal;
  src: url("../fonts/signifier-web-black.eot?#iefix") format("embedded-opentype"), url("../fonts/signifier-web-black.woff2") format("woff2"), url("../fonts/signifier-web-black.woff") format("woff");
}
@font-face {
  font-family: "Signifier";
  font-weight: 900;
  font-style: italic;
  src: url("../fonts/signifier-web-black-italic.eot?#iefix") format("embedded-opentype"), url("../fonts/signifier-web-black-italic.woff2") format("woff2"), url("../fonts/signifier-web-black-italic.woff") format("woff");
}
@font-face {
  font-family: "Signifier";
  font-weight: 700;
  font-style: normal;
  src: url("../fonts/signifier-web-bold.eot?#iefix") format("embedded-opentype"), url("../fonts/signifier-web-bold.woff2") format("woff2"), url("../fonts/signifier-web-bold.woff") format("woff");
}
@font-face {
  font-family: "Signifier";
  font-weight: 700;
  font-style: italic;
  src: url("../fonts/signifier-web-bold-italic.eot?#iefix") format("embedded-opentype"), url("../fonts/signifier-web-bold-italic.woff2") format("woff2"), url("../fonts/signifier-web-bold-italic.woff") format("woff");
}
@font-face {
  font-family: "Signifier";
  font-weight: 400;
  font-style: normal;
  src: url("../fonts/signifier-web-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/signifier-web-regular.woff2") format("woff2"), url("../fonts/signifier-web-regular.woff") format("woff");
}
@font-face {
  font-family: "Signifier";
  font-weight: 400;
  font-style: italic;
  src: url("../fonts/signifier-web-regular-italic.eot?#iefix") format("embedded-opentype"), url("../fonts/signifier-web-regular-italic.woff2") format("woff2"), url("../fonts/signifier-web-regular-italic.woff") format("woff");
}
@font-face {
  font-family: "Signifier";
  font-weight: 300;
  font-style: normal;
  src: url("../fonts/signifier-web-light.eot?#iefix") format("embedded-opentype"), url("../fonts/signifier-web-light.woff2") format("woff2"), url("../fonts/signifier-web-light.woff") format("woff");
}
@font-face {
  font-family: "Signifier";
  font-weight: 300;
  font-style: italic;
  src: url("../fonts/signifier-web-light-italic.eot?#iefix") format("embedded-opentype"), url("../fonts/signifier-web-light-italic.woff2") format("woff2"), url("../fonts/signifier-web-light-italic.woff") format("woff");
}
@font-face {
  font-family: "Signifier";
  font-weight: 200;
  font-style: normal;
  src: url("../fonts/signifier-web-extralight.eot?#iefix") format("embedded-opentype"), url("../fonts/signifier-web-extralight.woff2") format("woff2"), url("../fonts/signifier-web-extralight.woff") format("woff");
}
@font-face {
  font-family: "Signifier";
  font-weight: 200;
  font-style: italic;
  src: url("../fonts/signifier-web-extralight-italic.eot?#iefix") format("embedded-opentype"), url("../fonts/signifier-web-extralight-italic.woff2") format("woff2"), url("../fonts/signifier-web-extralight-italic.woff") format("woff");
}
@font-face {
  font-family: "Prismaset";
  font-weight: normal;
  font-style: normal;
  src: url("../fonts/PrismasetLL-CarvedAM.woff2") format("woff2");
}
/*-------------------------------
>>> BASIC LAYOUT & TYPOGRAPHY
-------------------------------*/
* {
  padding: 0px;
  margin: 0px;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  --max-width: 1260px;
  --margin: calc((100vw - var(--max-width))/2);
  --pad: 100px;
  --section-pad: 12rem;
  --gutter: 20px;
  --carousel-height: 90vh;
  --body-text: 22px;
  --body-leading: 1.45;
  --medium-heading: 36px;
  --footer-text: 18px;
  --imgvert-height: 600px;
  --thumbnail-height: 530px;
  --lightgray: rgb(225,225,225);
}
@media only screen and (max-width: 1330px) {
  html {
    --body-text: 20px;
    --footer-text: 18px;
    --margin: 100px;
    --max-width: calc( 100% - var(--margin)*2 );
    --imgvert-height: 450px;
    --thumbnail-height: 400px;
  }
}
@media only screen and (max-width: 980px) {
  html {
    --carousel-height: 80vh;
    --margin: 50px;
    --imgvert-height: 400px;
    --medium-heading: 30px;
    --thumbnail-height: 350px;
  }
}
@media only screen and (max-width: 550px) {
  html {
    --max-width: 100%;
    --medium-heading: 28px;
    --section-pad: 8rem;
    --margin: 1rem;
    --body-leading: 1.4;
    --fullimgheight: 500px;
    --gap: 1rem;
    --imgvert-height: 300px;
    --thumbnail-height: 200px;
  }
}

::selection {
  color: white;
  background: rgb(20, 20, 20);
}

body {
  background: white;
  font-family: "Signifier", "Garamond", "Times", serif;
  font-weight: 300;
  font-size: var(--body-text);
  line-height: var(--body-leading);
  font-feature-settings: "pnum" on, "onum" on;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

.noscroll {
  overflow: hidden;
}

p {
  margin-bottom: 1em;
}

em {
  font-style: italic;
}

.sm {
  text-transform: lowercase;
  font-variant: small-caps;
}

strong {
  font-weight: 700;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

h1, h2 {
  font-weight: 700;
  font-size: var(--medium-heading);
  line-height: 1.25;
}

h3 {
  font-size: var(--medium-heading);
  font-weight: 300;
  font-style: italic;
  line-height: 1.12;
}

h4 {
  font-size: var(--footer-text);
  font-weight: 300;
  text-transform: lowercase;
  font-variant: small-caps;
  letter-spacing: 0.01em;
}

h5, h6 {
  font-size: var(--body-text);
  font-weight: 300;
}

a {
  color: rgb(0, 0, 0);
  text-decoration: none;
  border-bottom: 1px solid black;
}
a:hover {
  font-style: italic;
  text-decoration: none;
  outline: none;
}

main a[target=_blank]::after {
  content: " ↗";
  white-space: nowrap;
}
main a[target=_blank].press-item::after, main a[target=_blank].text-list-item::after {
  content: none;
}

.contact-template a[target=_blank]::after {
  content: none;
}

img {
  width: 100%;
  display: block;
}

figcaption {
  display: block;
  font-size: 0.8em;
  font-style: italic;
  line-height: 1.5;
  width: 90%;
  margin-top: 20px;
}
@media only screen and (max-width: 550px) {
  figcaption {
    width: 100%;
    margin-top: 1rem;
  }
}
figcaption em {
  font-style: normal;
}

/*-------------------------------
>>> HEADER & LOGO POSITIONS
-------------------------------*/
header {
  position: relative;
  z-index: 80;
}

#logo {
  position: absolute;
  top: -1rem;
  left: auto;
  right: calc(var(--margin) + 6rem);
}
@media only screen and (max-width: 550px) {
  #logo {
    right: 6rem;
  }
}

#home #logo .fill {
  fill: white;
}

#logo-svg-v {
  width: 90px;
}
@media only screen and (max-width: 1330px) {
  #logo-svg-v {
    width: 70px;
  }
}
@media only screen and (max-width: 550px) {
  #logo-svg-v {
    width: 60px;
  }
}

#logo-svg-h {
  height: 90px;
}
@media only screen and (max-width: 1330px) {
  #logo-svg-h {
    height: 70px;
  }
}
@media only screen and (max-width: 550px) {
  #logo-svg-h {
    height: 60px;
  }
}

.studio #logo, .inquiry #logo, .post #logo {
  left: calc(var(--margin) + 6rem);
  right: auto;
}
@media only screen and (max-width: 550px) {
  .studio #logo, .inquiry #logo, .post #logo {
    left: calc(var(--margin) + 3rem);
  }
}

.projects #logo, .tetrachroma #logo {
  left: -22px;
  top: 50px;
}

.contact #logo {
  left: auto;
  right: 0;
  top: 200px;
  overflow-x: hidden;
}
.contact #logo svg {
  margin-right: -22px;
}
@media only screen and (max-width: 550px) {
  .contact #logo {
    top: 150px;
  }
  .contact #logo svg {
    margin-right: -15px;
  }
}

.nologo #logo {
  display: none;
}

/*-------------------------------
>>> NAVIGATION
-------------------------------*/
.nav-icon {
  position: fixed;
  top: calc(var(--pad) + 14px);
  right: var(--margin);
  z-index: 120;
  mix-blend-mode: exclusion;
}
.nav-icon:hover {
  cursor: pointer;
}
@media only screen and (max-width: 1330px) {
  .nav-icon {
    top: 60px;
  }
}
@media only screen and (max-width: 550px) {
  .nav-icon {
    top: 26px;
    right: var(--margin);
  }
}

.bar {
  height: 3px;
  margin: 8px 0px;
  width: 37px;
  background: white;
}

.cross {
  transform: rotate(45deg) translateY(8px);
}
.cross .bar {
  background: white;
}
.cross .bar:nth-child(2) {
  transform: rotate(90deg) translate(-30%, -30%);
}

#close-icon {
  display: none;
}

#menu-icon {
  display: block;
}

.open #menu-icon {
  display: none;
}
.open #close-icon {
  display: block;
}

.top-menu a {
  color: white;
}

nav li {
  font-weight: 400;
  font-size: 48px;
  line-height: 1.3;
  list-style-type: none;
  cursor: pointer;
}
@media only screen and (max-width: 550px) {
  nav li {
    font-size: 42px;
  }
}
nav li a {
  text-decoration: none;
  border-bottom-color: transparent;
}
nav li a:hover {
  font-style: italic;
}
nav.open #menu {
  transform: translate(0);
}
nav .main-nav {
  transition: transform 500ms ease-in-out;
  transform: translateX(100%);
  position: fixed;
  height: 100vh;
  color: white;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
}
nav .main-nav .active-area {
  margin-left: 25%;
  height: 100%;
  padding: var(--pad) var(--margin) var(--pad) var(--pad);
  background-color: rgb(20, 20, 20);
  display: grid;
  grid-template-columns: repeat(9, 1fr);
  grid-column-gap: var(--gutter);
}
@media only screen and (max-width: 1330px) {
  nav .main-nav .active-area {
    padding-top: 3rem;
    padding-right: 3rem;
    padding-left: 3rem;
    position: relative;
  }
}
@media only screen and (max-width: 980px) {
  nav .main-nav .active-area {
    margin-left: 28%;
    height: 100%;
    bottom: 0;
    grid-template-rows: 1fr auto;
    padding-bottom: 7rem;
  }
}
@media only screen and (max-width: 550px) {
  nav .main-nav .active-area {
    display: block;
    margin-left: 0;
    padding: var(--margin);
  }
}
nav .main-nav .nav-content {
  grid-row: 1;
  grid-column-start: 1;
  grid-column-end: span 2;
}
nav .main-nav .subnav-content {
  grid-column-start: 3;
  grid-column-end: span 3;
}
@media only screen and (max-width: 1330px) {
  nav .main-nav .subnav-content {
    grid-column-start: unset;
    grid-column-end: unset;
    position: absolute;
    left: 230px;
    top: 48px;
  }
}
@media only screen and (max-width: 980px) {
  nav .main-nav .subnav-content {
    grid-column-start: unset;
    grid-column-end: unset;
    position: absolute;
    left: 230px;
    top: 48px;
  }
}
@media only screen and (max-width: 550px) {
  nav .main-nav .subnav-content {
    left: 170px;
    top: 0;
  }
}
nav .main-nav .subnav-content li {
  font-size: 36px;
}
@media only screen and (max-width: 550px) {
  nav .main-nav .subnav-content li {
    font-size: 32px;
  }
}
nav .main-nav #tetralink {
  grid-column-start: 7;
  grid-column-end: -1;
  grid-row: 2;
  margin-bottom: 0;
  margin-bottom: 90px;
  margin-top: auto;
  text-indent: -10px;
}
@media only screen and (max-width: 1330px) {
  nav .main-nav #tetralink {
    grid-column-start: 4;
  }
}
@media only screen and (max-width: 980px) {
  nav .main-nav #tetralink {
    margin-bottom: var(--pad);
    grid-column-start: 1;
    text-indent: 0;
  }
}
nav .main-nav .footer-col {
  grid-row: 3;
  align-self: end;
  height: 79px;
  grid-column-end: span 3;
}
nav .main-nav .footer-col a, nav .main-nav .footer-col .subscribe-trigger {
  border-bottom-color: white;
}
@media only screen and (max-width: 980px) {
  nav .main-nav .footer-col {
    height: auto;
    grid-column-start: 1;
    grid-column-end: -1 !important;
    grid-row: auto;
  }
}
nav .main-nav .footer-inquiry {
  grid-column-start: 1;
  grid-column-end: span 3;
}
@media only screen and (max-width: 1330px) {
  nav .main-nav .footer-inquiry {
    grid-column-end: span 3;
  }
}
@media only screen and (max-width: 550px) {
  nav .main-nav .footer-inquiry {
    margin-top: 5rem;
  }
}
nav .main-nav .email, nav .main-nav .submit-button {
  color: white;
}

[data-active-menu=home] #navlink-home,
[data-active-menu=studio] #navlink-studio,
[data-active-menu=projects] #navlink-work,
[data-active-menu=project] #navlink-work,
[data-active-menu=press] #navlink-press,
[data-active-menu=contact] #navlink-contact {
  font-style: italic;
}

.home-menu {
  grid-column-start: 1;
  grid-column-end: span 3;
}
.home-menu li {
  font-size: var(--medium-heading);
  font-weight: 700;
}
.home-menu li a {
  border-bottom: none;
}
@media only screen and (max-width: 1330px) {
  .home-menu {
    display: none;
  }
}

#studio .home-menu {
  grid-column-start: 2;
}

/*-------------------------------
>>> MAIN STRUCTURES
-------------------------------*/
main {
  background: white;
}
@media only screen and (max-width: 1330px) {
  main {
    padding-top: calc(2 * var(--pad));
  }
}
@media only screen and (max-width: 1330px) {
  main.home-template {
    padding-top: 0;
  }
}
@media only screen and (max-width: 980px) {
  main.home-template > section:first-child {
    padding-top: 0;
  }
}
@media only screen and (max-width: 550px) {
  main.home-template section:first-child {
    padding-top: var(--pad);
  }
}
@media only screen and (max-width: 1330px) {
  main.work-detail {
    padding-top: 0;
  }
}
@media only screen and (max-width: 550px) {
  main.work-detail {
    padding-top: var(--pad);
  }
}

.content {
  max-width: var(--max-width);
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  position: relative;
}
@media only screen and (max-width: 550px) {
  .content {
    padding-left: var(--margin);
    padding-right: var(--margin);
  }
}

section {
  padding-top: var(--section-pad);
}

.quotestart {
  text-indent: -0.4em;
}

.page-title {
  grid-column-end: span 3;
}
@media only screen and (max-width: 550px) {
  .page-title {
    margin-bottom: calc(var(--pad) * 0.5);
  }
}

.subtitle {
  font-size: var(--medium-heading);
  font-feature-settings: "lnum" on, "onum" off;
  line-height: 1;
}
@media only screen and (max-width: 550px) {
  .subtitle {
    margin-top: var(--pad);
    margin-bottom: var(--gutter);
  }
}

.intro-layout {
  grid-column-start: 4;
  grid-column-end: span 6;
}
@media only screen and (max-width: 1330px) {
  .intro-layout {
    grid-column-start: 5;
    grid-column-end: -1;
  }
}
.intro-layout.right-align {
  grid-column-start: 7;
  grid-column-end: -1;
}
@media only screen and (max-width: 1330px) {
  .intro-layout.right-align {
    grid-column-start: 4;
  }
}

.heading-text {
  font-weight: 200;
  font-size: var(--medium-heading);
  line-height: 1.25;
}

.subintro {
  margin-top: 0;
}

.feature {
  top: 0;
  left: 0;
  padding: 0;
  width: 100vw;
  height: 100vh;
  position: fixed;
  background-color: var(--lightgray);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.feature .content {
  position: absolute;
  bottom: -2.5rem;
  left: calc((100vw - var(--max-width)) / 2);
}
@media only screen and (max-width: 550px) {
  .feature {
    height: calc(var(--fullimgheight) + var(--gap));
  }
}

/*-------------------------------
>>> GRID SETTINGS
-------------------------------*/
.grid, footer .footer-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-column-gap: var(--gutter);
  grid-row-gap: 80px;
}
@media only screen and (max-width: 550px) {
  .grid, footer .footer-grid {
    display: block;
    grid-row-gap: var(--gap);
  }
}

.col, .footer-col {
  grid-column-start: auto;
  grid-column-end: span 2;
}

.colstart-1 {
  grid-column-start: 1;
}

.colstart-2 {
  grid-column-start: 2;
}

.colstart-3 {
  grid-column-start: 3;
}

.colstart-4 {
  grid-column-start: 4;
}

.colstart-5 {
  grid-column-start: 5;
}

.colstart-6 {
  grid-column-start: 6;
}

.colstart-7 {
  grid-column-start: 7;
}

.colstart-8 {
  grid-column-start: 8;
}

.colstart-9 {
  grid-column-start: 9;
}

.colstart-10 {
  grid-column-start: 10;
}

.colstart-11 {
  grid-column-start: 11;
}

.colspan-2 {
  grid-column-end: span 2;
}

.colspan-3 {
  grid-column-end: span 3;
}

.colspan-4 {
  grid-column-end: span 4;
}

.colspan-5 {
  grid-column-end: span 5;
}

.colspan-6 {
  grid-column-end: span 6;
}

.colspan-7 {
  grid-column-end: span 7;
}

.colspan-8 {
  grid-column-end: span 8;
}

.colspan-9 {
  grid-column-end: span 9;
}

.colspan-end {
  grid-column-end: -1;
}

.row-2 {
  grid-row-start: 2;
}

.row-3 {
  grid-row-start: 3;
}

.row-4 {
  grid-row-start: 4;
}

/*-------------------------------
>>> FOOTER
-------------------------------*/
#star {
  width: 123px;
}

footer {
  background: white;
}
footer .footer-content {
  max-width: var(--max-width);
  margin-right: auto;
  margin-left: auto;
  padding: var(--pad) 0;
}
@media only screen and (max-width: 550px) {
  footer .footer-content {
    padding: 5rem var(--margin);
  }
}
footer .footer-inquiry {
  grid-column-end: span 7;
}
@media only screen and (max-width: 1330px) {
  footer .footer-inquiry {
    grid-column-end: span 6;
  }
}
@media only screen and (max-width: 980px) {
  footer .footer-inquiry {
    grid-column-end: span 4;
  }
}
footer .subscribe {
  grid-column-end: span 3;
}
@media only screen and (max-width: 980px) {
  footer .subscribe {
    grid-column-start: 9;
    grid-column-end: -1;
  }
}

@media screen and (max-width: 700px) {
  footer .footer-grid {
    display: block;
  }
}
.footer-col {
  font-size: var(--footer-text);
}
@media only screen and (max-width: 1330px) {
  .footer-col {
    grid-column-end: span 3;
  }
}
@media only screen and (max-width: 980px) {
  .footer-col {
    grid-column-end: span 4;
    margin-bottom: calc(var(--body-leading) * 1em);
  }
}
@media only screen and (max-width: 550px) {
  .footer-col.footer-inquiry {
    margin-top: calc(var(--pad) * 0.5);
  }
}

/*-------------------------------
>>> EFFECTS
-------------------------------*/
.layer {
  position: relative;
  top: 100vh;
}
@media only screen and (max-width: 550px) {
  .layer {
    top: var(--fullimgheight);
  }
}

@media only screen and (max-width: 550px) {
  .home .layer {
    top: calc(var(--fullimgheight) + 50px);
  }
}

.starpunch {
  margin: -1 0;
  padding-top: calc(var(--pad) * 2);
  padding-left: 53.4%;
  background: white;
}
.starpunch .fill {
  fill: var(--lightgray);
}
@media only screen and (max-width: 1330px) {
  .starpunch {
    padding-left: 45%;
  }
}
@media only screen and (max-width: 980px) {
  .starpunch {
    padding-left: 29%;
  }
}

.project.nologo header, .home header {
  mix-blend-mode: exclusion;
}
.project.nologo header .fill, .home header .fill {
  fill: white;
}
.project.nologo .starpunch, .home .starpunch {
  mix-blend-mode: screen;
  transform: translate3d(0, 0, 0);
}
.project.nologo .starpunch .fill, .home .starpunch .fill {
  fill: black;
}
@media only screen and (max-width: 980px) {
  .project.nologo .starpunch .fill, .home .starpunch .fill {
    fill: var(--lightgray);
  }
}
@media only screen and (max-width: 980px) {
  .project.nologo .starpunch, .home .starpunch {
    mix-blend-mode: normal;
  }
}

/*-------------------------------
>>> NEWSLETTER
-------------------------------*/
.newsletter input {
  display: inline;
  font-size: 18px;
  height: 26px;
}
.newsletter .subscribe-trigger {
  display: inline-block;
  border-bottom: 1px solid black;
}
.newsletter .subscribe-trigger:hover {
  cursor: pointer;
  font-style: italic;
  border-bottom-color: transparent;
}
.newsletter .newsletter-input {
  display: flex;
}
.newsletter .newsletter-input .email { /* email input field */
  flex: 1;
  width: 100%;
  font-size: var(--footer-text);
}
.newsletter .newsletter-input .email::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #999999;
  opacity: 1; /* Firefox */
}
.newsletter .newsletter-input .submit-button {
  width: 40px;
  position: relative;
  top: -5px;
}
.newsletter .newsletter-input .submit-button:hover {
  cursor: pointer;
  color: #999999;
}
.newsletter .newsletter-input[data-display=hidden] {
  display: none;
}
.newsletter .newsletter-input[data-display=visible] {
  display: flex;
}
.newsletter .response {
  font-style: italic;
  line-height: 1.2;
}

/*-------------------------------
>>> HOMEPAGE
-------------------------------*/
.home-top {
  padding-top: 0;
}
.home-top .slider-arrows .arrow {
  height: var(--carousel-height);
}

#slider-container {
  width: 100vw;
  overflow-x: hidden;
}

.slider-item {
  outline: none;
  border: 0;
  -webkit-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
}
.slider-item a {
  outline: none;
}

.carousel {
  z-index: 0;
  position: fixed;
  top: 0;
  left: 0;
  height: calc(var(--carousel-height) + 100px);
}
.carousel .swiper-wrapper {
  padding: 0 0 0 26% !important;
}
@media only screen and (max-width: 980px) {
  .carousel .swiper-wrapper {
    padding-left: 28% !important;
  }
}
.carousel figcaption {
  margin-top: 12px;
  font-style: normal;
}
.carousel figcaption:hover {
  font-style: italic;
}
.carousel .slider-item {
  width: 100vw;
}
.carousel .slider-item:hover {
  cursor: pointer;
}
.carousel .carousel-img {
  display: block;
  border: 0;
  height: var(--carousel-height);
}
.carousel .carousel-img img {
  height: 100%;
  object-fit: cover;
}
.carousel .carousel-img:focus, .carousel .carousel-img:active {
  outline: none;
}
@media only screen and (max-width: 550px) {
  .carousel .carousel-img {
    height: var(--fullimgheight);
  }
}
@media only screen and (max-width: 980px) {
  .carousel {
    position: absolute;
  }
}
@media only screen and (max-width: 550px) {
  .carousel {
    height: calc(var(--fullimgheight) + 50px);
  }
}

/*-------------------------------
>>> SLIDER COMPONENTS
-------------------------------*/
.slider-arrows {
  font-size: 75px;
}
@media only screen and (max-width: 980px) {
  .slider-arrows {
    display: none;
  }
}
.slider-arrows .arrow {
  position: absolute;
  z-index: 50;
  width: 50vw;
  height: 100%;
  color: white;
  mix-blend-mode: exclusion;
  top: 0;
  display: flex;
  align-items: center;
  outline: none;
}
.slider-arrows .arrow:hover {
  cursor: pointer;
}
.slider-arrows .arrow:hover .arrow-visible {
  opacity: 1;
}
.slider-arrows .next {
  right: 1rem;
  justify-content: flex-end;
}
.slider-arrows .prev {
  left: 1rem;
}
.slider-arrows .arrow-visible {
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}

/*-------------------------------
>>> PROJECT INDEX PAGE
-------------------------------*/
.vertical-label, .quarterly .issue h3, .work-index .project-item.completed h3 {
  font-size: calc(var(--body-text) * 1.25);
  position: absolute;
  transform: rotate(90deg);
  transform-origin: top left;
  top: 0;
  left: -10px;
  width: 150%;
}

.work-index {
  padding-top: calc(var(--pad) * 1.5);
}
.work-index .project-item {
  display: block;
  text-decoration: none;
  margin-bottom: var(--pad);
}
.work-index .project-item.completed {
  position: relative;
  display: block;
  border-bottom: none;
  grid-column-end: span 5;
}
.work-index .project-item.completed:nth-child(odd) {
  grid-column-start: 2;
}
.work-index .project-item.completed:nth-child(even) {
  grid-column-start: 8;
}
@media only screen and (max-width: 1330px) {
  .work-index .project-item.completed {
    grid-column-end: span 4;
  }
  .work-index .project-item.completed:nth-child(odd) {
    grid-column-start: 3;
  }
}
@media only screen and (max-width: 550px) {
  .work-index .project-item.completed h3 {
    position: static;
    transform: none;
    width: 100%;
  }
}
.work-index .project-item.completed p {
  width: 80%;
}
@media only screen and (max-width: 1330px) {
  .work-index .project-item.completed p {
    width: 100%;
  }
}
.work-index .project-item.inprogress {
  grid-column-end: span 3;
}
@media only screen and (max-width: 1330px) {
  .work-index .project-item.inprogress {
    grid-column-end: span 4;
  }
}
.work-index .project-item.inprogress h3 {
  font-size: calc(var(--body-text));
  line-height: var(--body-leading);
}
.work-index .project-item.inprogress:nth-child(2n) {
  grid-column-start: 5;
}
.work-index .project-item.inprogress:nth-child(3n) {
  grid-column-start: 9;
}
.work-index .project-item.inprogress:nth-child(4n) {
  grid-column-start: 1;
}
@media only screen and (max-width: 550px) {
  .work-index .project-item.inprogress {
    flex: 40%;
    max-width: calc(50% - var(--margin) * 0.5);
    margin-bottom: var(--pad);
  }
}
.work-index .project-item .window {
  height: 360px;
  margin-bottom: 1rem;
  overflow: hidden;
}
@media only screen and (max-width: 980px) {
  .work-index .project-item .window {
    height: var(--thumbnail-height);
  }
}
.work-index .project-item .window img {
  height: 100%;
  object-fit: cover;
}
.work-index .project-item a:hover {
  font-style: normal;
  cursor: pointer;
}
.work-index .on-the-boards .subtitle {
  padding-bottom: 1rem;
  border-bottom: 1px solid black;
  margin-bottom: var(--pad);
}
@media only screen and (max-width: 550px) {
  .work-index .on-the-boards .grid {
    display: flex;
    flex-wrap: wrap;
  }
}

/*-------------------------------
>> PROJECT PAGE
-------------------------------*/
/*-------------------------------
>>> STUDIO PAGE
-------------------------------*/
@media only screen and (max-width: 1330px) {
  .studio .intro-layout {
    grid-column-start: 1;
    grid-column-end: span 10;
  }
}
@media only screen and (max-width: 550px) {
  .studio .page-title {
    padding-top: var(--pad);
  }
}
.studio .studiocover {
  padding-top: var(--pad);
}

#about .intro-layout, #people .intro-layout {
  grid-column-start: 1;
}
@media only screen and (max-width: 1330px) {
  #about .intro-layout, #people .intro-layout {
    order: 2;
  }
}
#about .page-title, #people .page-title {
  grid-column-start: 9;
  grid-column-end: -1;
}
@media only screen and (max-width: 1330px) {
  #about .page-title, #people .page-title {
    grid-column-start: 1;
    order: 1;
  }
}
@media only screen and (max-width: 550px) {
  #about, #people {
    display: flex;
    flex-wrap: wrap;
  }
}

.bios {
  grid-column-start: 6;
  grid-column-end: span 4;
}
@media only screen and (max-width: 1330px) {
  .bios {
    grid-row-start: 3;
    order: 3;
  }
}
@media only screen and (max-width: 980px) {
  .bios {
    grid-column-start: 3;
    grid-column-end: -2;
  }
}

.people-subtitle {
  grid-column-end: span 3;
  margin-top: 10px;
}

.partners {
  grid-column-end: span 4;
}
.partners.partner1 {
  grid-column-start: 4;
}
@media only screen and (max-width: 980px) {
  .partners.partner1 {
    grid-column-end: -1;
  }
}
.partners.partner2 {
  grid-column-start: 9;
}
@media only screen and (max-width: 980px) {
  .partners.partner2 {
    grid-row-start: 4;
    grid-column-start: 4;
    grid-column-end: -1;
  }
}

#process {
  counter-reset: step;
}
#process .page-title {
  grid-column-start: 3;
}
@media only screen and (max-width: 550px) {
  #process .page-title {
    padding-top: 0;
  }
}
#process .number::before {
  counter-increment: step; /* Increment the value of section counter by 1 */
  content: counter(step); /* Display the word 'Section ', the value of section counter, and a colon before the content                                                of each h3 */
}
#process .process-intro {
  grid-column-start: 7;
  grid-column-end: span 6;
}

.number {
  grid-column-start: 1;
}
@media only screen and (max-width: 550px) {
  .number {
    margin-top: var(--pad);
    margin-bottom: 20px;
  }
}

.process-step {
  grid-column-start: 3;
  grid-column-end: span 4;
}
@media only screen and (max-width: 1330px) {
  .process-step {
    grid-column-end: span 8;
  }
}
.process-step .subtitle {
  margin-top: 0;
  margin-bottom: 20px;
}

#team h3 {
  grid-column-end: span 3;
  margin-top: -5px;
}
@media only screen and (max-width: 980px) {
  #team h3 {
    margin-bottom: calc(var(--gutter) * 1.5);
  }
}

@media only screen and (max-width: 550px) {
  #collaborators {
    padding-top: 0;
  }
}
#collaborators h3 {
  grid-column-end: span 3;
}
@media only screen and (max-width: 980px) {
  #collaborators h3 {
    grid-column-end: span 6;
  }
}

.team-features {
  grid-column-end: span 9;
  display: grid;
  grid-template-columns: repeat(9, 1fr);
  grid-column-gap: var(--gutter);
  grid-row-gap: var(--pad);
}
.team-features .profile {
  grid-column-end: span 3;
}
.team-features .profile h5 {
  margin-top: 1rem;
}
.team-features .profile img {
  width: 80%;
}
@media only screen and (max-width: 980px) {
  .team-features {
    grid-template-columns: repeat(6, 1fr);
  }
  .team-features .profile img {
    width: 100%;
  }
}

.team-list {
  grid-column-start: 4;
  grid-column-end: span 7;
}
@media only screen and (max-width: 1330px) {
  .team-list {
    grid-column-end: span 10;
  }
}
@media only screen and (max-width: 980px) {
  .team-list {
    margin-top: var(--pad);
    grid-column-start: 1;
    grid-column-end: -1;
  }
}
.team-list h3 {
  margin-bottom: var(--gutter);
}
.team-list .text-list-item {
  border-top: 1px solid black;
}
.team-list .text-list-item h6 {
  font-style: italic;
}
.team-list .text-list-item:last-child {
  border-bottom: 1px solid black;
}

#careers .page-title {
  grid-column-start: 1;
  grid-column-end: span 3;
}
@media only screen and (max-width: 550px) {
  #careers .page-title {
    padding-top: 0;
  }
}
#careers .people-subtitle {
  grid-column-start: 1;
}
#careers .positions-list {
  grid-column: 4/-1;
}
#careers h6 {
  font-style: italic;
}
#careers .careers-list-item {
  grid-column-start: 4;
  grid-column-end: span 4;
}
#careers .careers-list-item:nth-child(2n+1) {
  grid-column-start: 8;
}

.text-list-item {
  display: block;
  padding: 20px 0;
  margin-right: 0;
}
.text-list-item h5, .text-list-item h6 {
  display: inline;
}
.text-list-item a {
  border: none;
}

/*-------------------------------
>>> PRESS PAGE
-------------------------------*/
.press-page .article-title {
  border-bottom: 1px solid black;
}
.press-page a:hover {
  font-style: normal;
}
.press-page a:hover .article-title {
  display: inline;
  font-style: italic;
}

@media only screen and (max-width: 550px) {
  #press-items {
    display: flex;
    flex-wrap: wrap;
  }
}

.press-item {
  position: relative;
  display: block;
  height: var(--thumbnail-height);
  border-bottom: none;
  grid-column-end: span 3;
}
.press-item:first-child, .press-item:nth-child(4) {
  grid-column-start: 2;
}
.press-item:nth-child(2), .press-item:nth-child(5) {
  grid-column-start: 6;
}
.press-item:nth-child(3), .press-item:nth-child(6) {
  grid-column-start: 10;
}
@media only screen and (max-width: 1330px) {
  .press-item {
    grid-column-end: span 4;
    height: auto;
  }
  .press-item:first-child, .press-item:nth-child(3), .press-item:nth-child(5) {
    grid-column-start: 3;
  }
  .press-item:nth-child(2), .press-item:nth-child(4), .press-item:nth-child(6) {
    grid-column-start: 8;
  }
}
@media only screen and (max-width: 550px) {
  .press-item {
    flex: 40%;
    max-width: calc(50% - var(--margin) * 0.5);
    margin-bottom: var(--pad);
  }
}
.press-item .press-cover {
  height: 360px;
  overflow: hidden;
  margin-bottom: 1rem;
}
.press-item .press-cover r img {
  object-fit: cover;
}
@media only screen and (max-width: 1330px) {
  .press-item .press-cover {
    height: auto;
  }
}
@media only screen and (max-width: 550px) {
  .press-item .press-cover {
    height: 200px;
  }
}
.press-item h5 {
  font-style: italic;
  line-height: 1.12;
  position: absolute;
  transform: rotate(90deg);
  transform-origin: top left;
  top: 0;
  left: -10px;
}
@media only screen and (max-width: 550px) {
  .press-item h5 {
    position: static;
    transform: none;
    font-size: 25px;
    margin-bottom: 8px;
  }
}
.press-item h6 {
  display: inline-block;
}

#press-archive {
  grid-column-start: 1;
  grid-column-end: -1;
  width: 100%;
}

.archive-header {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid black;
  padding-bottom: 1em;
  margin-top: var(--pad);
}
.archive-header .arrow {
  font-size: var(--medium-heading);
}

.dropdown-title:hover {
  cursor: pointer;
}
.dropdown-title[data-dropdown=expanded] .arrow {
  transform: scaleY(-1);
}

.dropdown-content {
  display: none;
}

/*-------------------------------
>>> CONTACT
-------------------------------*/
.contact main section:first-child {
  padding-top: 0;
}
.contact main section:first-child .page-title {
  grid-column-start: 4;
  margin-top: var(--pad);
}
@media only screen and (max-width: 1330px) {
  .contact main section:first-child .page-title {
    grid-column-start: 1;
  }
}
.contact h3 {
  font-weight: 200;
  margin-top: 0;
}
.contact .intro-layout {
  grid-column-start: 1;
  grid-column-end: span 5;
}
@media only screen and (max-width: 1330px) {
  .contact .intro-layout {
    grid-column-end: span 8;
  }
}
.contact .register {
  margin-top: 1.25em;
}
.contact .site-info {
  grid-column-start: 4;
  grid-column-end: span 4;
}
@media only screen and (max-width: 1330px) {
  .contact .site-info {
    grid-column-start: 1;
    grid-column-end: span 6;
  }
}
@media only screen and (max-width: 550px) {
  .contact .site-info {
    margin-bottom: var(--pad);
  }
}
.contact .site-contact {
  grid-column-start: 9;
  grid-column-end: -1;
}
@media only screen and (max-width: 1330px) {
  .contact .site-contact {
    grid-column-start: 7;
  }
}
@media only screen and (max-width: 550px) {
  .contact .site-contact {
    margin-bottom: var(--pad);
  }
}
.contact .elsewhere {
  grid-column-end: span 6;
}

.contact-template .newsletter-input .email, .contact-template .newsletter-input .submit-button {
  font-weight: 200;
  font-size: var(--medium-heading);
  height: 52px;
}

@media screen and (max-width: 800px) {
  .contactinfo-area {
    display: block;
  }
  .elsewhere {
    margin-top: var(--pad);
  }
}
/*-------------------------------
>>> TETRACHROMA ISSUES QUARTERLY
-------------------------------*/
.post .feature {
  height: 75vh;
}
@media only screen and (max-width: 550px) {
  .post .feature {
    height: 550px;
  }
}
.post .layer {
  position: relative;
  top: 75vh;
}
@media only screen and (max-width: 550px) {
  .post .layer {
    top: 550px;
    padding-top: 0;
  }
}
.post main {
  padding-top: 0;
}
.post .cover-caption {
  grid-column-start: 8;
  grid-column-span: -1;
}
@media only screen and (max-width: 980px) {
  .post .cover-caption {
    grid-column-start: 4;
  }
}

.tetraheader {
  pointer-events: none;
  position: absolute;
  width: 100vw;
  overflow: hidden;
  top: -42vh;
  mix-blend-mode: difference;
  transform: translate3d(0, 0, 0);
  display: flex;
  justify-content: center;
}
.tetraheader .overlayimg {
  width: 100%;
  height: 567px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1530px;
  margin: auto;
}
.tetraheader .overlaytext {
  font-size: 375px;
  line-height: 0.8;
  font-family: "Prismaset";
  color: #a620d7;
  text-transform: uppercase;
  text-align: center;
  margin: auto;
}
@media only screen and (max-width: 1330px) {
  .tetraheader .overlaytext {
    width: auto;
    margin-left: -100%;
    margin-right: -100%;
  }
}
@media only screen and (max-width: 980px) {
  .tetraheader {
    top: -32vh;
  }
  .tetraheader .overlayimg {
    height: 480px;
    background-size: 1225px;
  }
  .tetraheader .overlaytext {
    font-size: 300px;
  }
}
@media only screen and (max-width: 550px) {
  .tetraheader {
    top: -130px;
  }
  .tetraheader .overlayimg {
    height: 230px;
    background-size: 101vw;
  }
  .tetraheader .overlaytext {
    font-size: 24vw;
  }
}

.quarterly .subscription {
  margin-top: 343px;
  grid-column-start: 8;
  grid-column-end: -1;
}
@media only screen and (max-width: 1330px) {
  .quarterly .subscription {
    grid-column-start: 6;
  }
}
@media only screen and (max-width: 980px) {
  .quarterly .subscription {
    grid-column-start: 2;
    grid-column-end: span 8;
  }
}
@media only screen and (max-width: 550px) {
  .quarterly .subscription {
    margin-top: 200px;
  }
}
@media only screen and (max-width: 1330px) {
  .quarterly {
    padding-top: 0;
  }
}
.quarterly .issue {
  position: relative;
}
.quarterly .issue h3 {
  width: auto;
  top: var(--section-pad);
  left: 80px;
}
@media only screen and (max-width: 1330px) {
  .quarterly .issue h3 {
    left: 5%;
  }
}
@media only screen and (max-width: 550px) {
  .quarterly .issue h3 {
    position: static;
    transform: none;
    margin-bottom: 20px;
  }
}
.quarterly .image {
  grid-column-start: 2;
}
.quarterly .text {
  margin-top: -10px;
  grid-column-start: 7;
}
@media only screen and (max-width: 550px) {
  .quarterly .text {
    margin-top: var(--pad);
  }
}
.quarterly .text-list-item {
  border-top: 1px solid white;
}

.post .work-inprogress .tetraheader, .quarterly .tetraheader {
  top: 270px;
}
@media only screen and (max-width: 550px) {
  .post .work-inprogress .tetraheader, .quarterly .tetraheader {
    top: 300px;
  }
}
.post .work-inprogress .intro-layout, .quarterly .intro-layout {
  grid-column-end: span 5;
}
@media only screen and (max-width: 1330px) {
  .post .work-inprogress .intro-layout, .quarterly .intro-layout {
    grid-column-end: -1;
  }
}
@media only screen and (max-width: 550px) {
  .post .work-inprogress .intro-layout, .quarterly .intro-layout {
    grid-column-start: 1;
  }
  .post .work-inprogress .intro-layout .page-title, .quarterly .intro-layout .page-title {
    margin-bottom: 0;
    margin-top: var(--pad);
  }
}

@media only screen and (max-width: 550px) {
  .post .work-inprogress {
    padding-top: calc(2 * var(--pad));
  }
}

nav.post-menu {
  margin-top: var(--pad);
  grid-column-start: 1;
  grid-column-end: 5;
}
@media only screen and (max-width: 1330px) {
  nav.post-menu {
    margin-top: 0;
    grid-row: 2;
    grid-column-end: -1;
  }
}
@media only screen and (max-width: 550px) {
  nav.post-menu {
    margin-bottom: var(--pad);
  }
}
nav.post-menu a {
  border-bottom: none;
}
nav.post-menu #quarterlyhome, nav.post-menu li {
  font-size: var(--medium-heading);
}
nav.post-menu ul {
  counter-reset: navmenu 0;
}
nav.post-menu li {
  margin-left: 45px;
  counter-increment: navmenu 1;
  font-feature-settings: "lnum" on, "onum" off;
}
nav.post-menu li::before {
  content: counter(navmenu) " ";
  font-style: normal;
}
nav.post-menu .current {
  font-style: italic;
  margin-left: 0;
}

.work-inprogress nav.post-menu {
  grid-column-start: 10;
  grid-column-end: -1;
}
@media only screen and (max-width: 1330px) {
  .work-inprogress nav.post-menu {
    grid-column-start: 7;
    margin-top: 0;
  }
}
@media only screen and (max-width: 980px) {
  .work-inprogress nav.post-menu {
    grid-column-start: 5;
  }
}
@media only screen and (max-width: 550px) {
  .work-inprogress nav.post-menu {
    margin-top: var(--pad);
  }
}

.inquiry, .tetrachroma, .post {
  --bgcolor: #202020;
  background-color: var(--bgcolor);
  color: white;
}
.inquiry main, .inquiry footer, .tetrachroma main, .tetrachroma footer, .post main, .post footer {
  background: var(--bgcolor);
}
.inquiry .layer main, .tetrachroma .layer main, .post .layer main {
  background-color: #202020;
}
.inquiry .starpunch, .tetrachroma .starpunch, .post .starpunch {
  background: var(--bgcolor);
}
.inquiry .fill, .tetrachroma .fill, .post .fill {
  fill: white;
}
.inquiry .bar, .tetrachroma .bar, .post .bar {
  background: white;
}
.inquiry main a, .inquiry footer a, .inquiry .subscribe-trigger, .tetrachroma main a, .tetrachroma footer a, .tetrachroma .subscribe-trigger, .post main a, .post footer a, .post .subscribe-trigger {
  color: white;
  border-color: white;
}
.inquiry input, .tetrachroma input, .post input {
  color: white;
}
.inquiry figure, .tetrachroma figure, .post figure {
  background: var(--bgcolor);
}

#project-inquiry {
  --bgcolor: black;
}

/*-------------------------------
>>> PROJECT BLOCKS
-------------------------------*/
/*-------------------------------
>> PROJECT PAGE BLOCKS
-------------------------------*/
figure img {
  background: var(--lightgray);
}

img[loading=lazy] {
  opacity: 0;
  transition: opacity 300ms ease-in-out;
}

img[loading=lazy].loaded {
  opacity: 1;
}

.work-detail .project-title {
  position: absolute;
  font-size: 116px;
  line-height: 1.1;
  font-weight: 400;
  z-index: 100;
  font-style: italic;
  width: 50%;
  transform-origin: bottom left;
  transform: rotate(90deg);
  top: -1.75em;
  left: 0.75em;
  margin-top: 0;
  color: white;
}
@media only screen and (max-width: 1330px) {
  .work-detail .project-title {
    font-size: 86px;
    width: 480px;
  }
}
@media only screen and (max-width: 550px) {
  .work-detail .project-title {
    width: 80%;
    position: static;
    transform: none;
    font-size: 52px;
    margin-left: var(--margin);
  }
}

.work-inprogress .otb-cover {
  grid-column-end: span 8;
}

@media only screen and (max-width: 1330px) {
  .project .intro-layout {
    grid-column-end: span 9;
  }
}
.project .projectimg:hover {
  cursor: pointer;
}

.layout-left .cover-caption {
  width: 100%;
  text-align: right;
  grid-column-start: 6;
}
.layout-left .intro-layout {
  grid-column-start: 6;
}
@media only screen and (max-width: 1330px) {
  .layout-left .intro-layout {
    grid-column-start: 4;
  }
}
.layout-left.work-inprogress .intro-layout {
  grid-column-start: 3;
  grid-column-end: span 7;
}
@media only screen and (max-width: 980px) {
  .layout-left.work-inprogress .intro-layout {
    grid-column-start: 1;
  }
}
.layout-left.work-inprogress .project-title {
  grid-column-start: 3;
  grid-column-end: span 6;
}
@media only screen and (max-width: 980px) {
  .layout-left.work-inprogress .project-title {
    grid-column-start: 1;
    grid-column-end: span 8;
  }
}

.layout-right .intro-layout {
  grid-column-start: 2;
}
@media only screen and (max-width: 1330px) {
  .layout-right .intro-layout {
    grid-column-start: 1;
  }
}
.layout-right .project-title {
  right: -3.25em;
  top: -1.75em;
  left: auto;
}
@media only screen and (max-width: 1330px) {
  .layout-right .project-title {
    right: -260px;
  }
}

.cover-caption {
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 1330px) {
  .cover-caption {
    padding: 0 1rem;
  }
}

.subcover {
  grid-column-start: 3;
  grid-column-end: span 5;
}
@media only screen and (max-width: 1330px) {
  .subcover {
    grid-column-start: 1;
    grid-column-end: span 8;
  }
}

.work-inprogress .subcover {
  grid-column-start: 7;
  grid-column-end: -1;
}

.project-info {
  grid-row-start: 3;
  grid-column-start: 1;
  grid-column-end: span 2;
}
@media only screen and (max-width: 1330px) {
  .project-info {
    grid-column-end: span 3;
  }
}
@media only screen and (max-width: 550px) {
  .project-info {
    margin-top: var(--pad);
  }
}

.state::before {
  content: ", ";
}

.partners-info {
  grid-row-start: 3;
  grid-column-start: 3;
  grid-column-end: span 6;
}
@media only screen and (max-width: 1330px) {
  .partners-info {
    grid-column-start: 4;
  }
}

.sub-intro {
  grid-row-start: 3;
  grid-column-start: 9;
  grid-column-end: span 4;
}
@media only screen and (max-width: 1330px) {
  .sub-intro {
    grid-row-start: 4;
    grid-column-start: 4;
    grid-column-end: span 8;
  }
}
@media only screen and (max-width: 550px) {
  .sub-intro {
    padding-top: var(--pad);
  }
}

@media only screen and (max-width: 550px) {
  .img-grid .img-item {
    padding-top: var(--section-pad);
  }
  .img-grid .img-item:first-child {
    padding-top: 0;
  }
}
@media only screen and (max-width: 550px) {
  .image .image-fullwidth, .video .image-fullwidth {
    margin-left: var(--margin);
    margin-right: var(--margin);
  }
}
.image .image-fullwidth figcaption, .video .image-fullwidth figcaption {
  margin-left: calc((100vw - var(--max-width)) / 2);
  width: var(--max-width);
}
@media only screen and (max-width: 550px) {
  .image .image-fullwidth figcaption, .video .image-fullwidth figcaption {
    margin-left: 0;
    width: auto;
  }
}
.image .image-left, .video .image-left {
  grid-column-start: 1;
  grid-column-end: span 8;
}
.image .image-left.vert, .video .image-left.vert {
  grid-column-end: span 6;
}
@media only screen and (max-width: 1330px) {
  .image .image-left.vert, .video .image-left.vert {
    grid-column-end: span 8;
  }
}
.image .image-right, .video .image-right {
  grid-column-start: 5;
  grid-column-end: -1;
}
.image .image-right.vert, .video .image-right.vert {
  grid-column-start: 7;
}
@media only screen and (max-width: 1330px) {
  .image .image-right.vert, .video .image-right.vert {
    grid-column-start: 5;
    grid-column-end: span 8;
  }
}

.video figure {
  position: relative;
  overflow: hidden;
  padding-top: 56.25%;
  width: 100%;
}
.video figure iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.video-square figure {
  position: relative;
  overflow: hidden;
  padding-top: 100%;
  width: 100%;
}
.video-square figure iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

@media only screen and (max-width: 550px) {
  .img-grid {
    display: block;
  }
}
.img-grid .img-item {
  grid-column-end: span 4;
}
.img-grid .img-item .img-vert {
  height: var(--imgvert-height);
  overflow: hidden;
}
.img-grid .img-item .img-vert img {
  height: 100%;
  object-fit: cover;
}
@media only screen and (max-width: 550px) {
  .img-grid .img-item .img-vert {
    height: auto;
  }
  .img-grid .img-item .img-vert img {
    width: 100%;
    height: auto;
  }
}
.img-grid.grid-2-right .img-item:first-child {
  grid-column-start: 5;
}

@media only screen and (max-width: 1330px) {
  .text div {
    grid-column-start: 1;
    grid-column-end: span 8;
  }
}

.textimage h3 {
  font-style: normal;
  font-weight: 700;
  font-size: var(--body-text);
}
.textimage .text {
  grid-column-end: span 4;
  grid-row: 1;
  margin-top: -7px;
}
@media only screen and (max-width: 550px) {
  .textimage .text {
    margin-top: 50px;
  }
}
.textimage .image {
  grid-column-end: span 5;
  grid-row: 1;
}
.textimage[data-imgtype=vertimg] .image {
  grid-column-end: span 4;
}
.textimage.right.imgright .text {
  grid-column-start: 3;
}
.textimage.right.imgright .image {
  grid-column-start: 8;
}
.textimage.right.imgright[data-imgtype=vertimg] .text {
  grid-column-start: 4;
}
.textimage.right.imgright[data-imgtype=vertimg] .image {
  grid-column-start: 9;
}
.textimage.right.imgleft .image {
  grid-column-start: 3;
}
.textimage.right.imgleft .text {
  grid-column-start: 9;
}
.textimage.right.imgleft[data-imgtype=vertimg] .image {
  grid-column-start: 4;
}
.textimage.left.imgright .text {
  grid-column-start: 1;
}
.textimage.left.imgright .image {
  grid-column-start: 6;
}
.textimage.left.imgleft .image {
  grid-column-start: 1;
}
.textimage.left.imgleft .text {
  grid-column-start: 7;
}
.textimage.left.imgleft[data-imgtype=vertimg] .text {
  grid-column-start: 6;
}
@media only screen and (max-width: 1330px) {
  .textimage .text {
    grid-column-end: span 6;
  }
  .textimage .image {
    grid-column-end: span 5;
  }
  .textimage[data-imgtype=vertimg] .image {
    grid-column-end: span 5;
  }
  .textimage.right.imgright .text, .textimage.right.imgright[data-imgtype=vertimg] .text {
    grid-column-start: 1;
  }
  .textimage.right.imgright .image, .textimage.right.imgright[data-imgtype=vertimg] .image {
    grid-column-start: 8;
  }
  .textimage.right.imgleft .image, .textimage.right.imgleft[data-imgtype=vertimg] .image {
    grid-column-start: 1;
  }
  .textimage.right.imgleft .text, .textimage.right.imgleft[data-imgtype=vertimg] .text {
    grid-column-start: 7;
  }
  .textimage.left.imgright .image {
    grid-column-start: 8;
  }
  .textimage.left.imgleft .text, .textimage.left.imgleft[data-imgtype=vertimg] .text {
    grid-column-start: 7;
  }
}
@media only screen and (max-width: 550px) {
  .textimage {
    display: flex;
    flex-direction: column-reverse;
  }
}

.lightbox {
  visibility: hidden;
  opacity: 0;
  transition: opacity 300ms 100ms ease-in-out;
  z-index: -1;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.9);
}
.lightbox .lightbox-img {
  -webkit-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  background: transparent;
  height: 90vh;
  width: 95vw;
  margin-top: 5vh;
}
.lightbox .lightbox-img img {
  width: auto;
  height: auto;
  margin: auto;
  max-height: 100%;
  max-width: 100%;
  top: 50%;
  position: relative;
  transform: translateY(-50%);
}
.lightbox .lightbox-img:focus, .lightbox .lightbox-img:active {
  outline: none;
}
.lightbox .cross {
  mix-blend-mode: exclusion;
  position: absolute;
  top: 1.5rem;
  right: 1rem;
  cursor: pointer;
  z-index: 1100;
}

.lightbox.visible {
  visibility: visible;
  opacity: 1;
  z-index: 1000;
}

.project-nav {
  font-feature-settings: "lnum" on, "onum" off;
}
.project-nav a {
  border-bottom: 0;
}
.project-nav .prev-nav {
  grid-column-start: 7;
  grid-column-end: span 3;
}
.project-nav .next-nav {
  grid-column-start: 10;
  grid-column-end: span 3;
  text-align: right;
}
@media only screen and (max-width: 1330px) {
  .project-nav {
    display: flex;
    justify-content: space-between;
  }
}

/*-------------------------------
>>> INQUIRY FORM
-------------------------------*/
input {
  outline: none;
  border: 0;
  background: transparent;
  border-radius: 0;
  -webkit-appearance: none;
}

input[type=text], input[type=email], input[type=tel], input[type=submit] {
  font-family: "Signifier";
  font-weight: 300;
  font-size: var(--body-text);
  line-height: 1.45;
  padding: 5px 0;
}

.honeypot {
  position: absolute;
  left: -9999px;
}

.inquiry-template .page-title {
  margin-bottom: var(--pad);
}
@media only screen and (max-width: 980px) {
  .inquiry-template .grid {
    display: block;
  }
}
.inquiry-template .divider {
  border-top: 1px solid white;
}
@media only screen and (max-width: 980px) {
  .inquiry-template .divider {
    border-top: none;
  }
}
.inquiry-template .form {
  padding-top: var(--pad);
}
.inquiry-template section {
  padding-bottom: var(--section-pad);
}
@media only screen and (max-width: 980px) {
  .inquiry-template section {
    padding-bottom: 0;
  }
}
.inquiry-template .intro-layout.right-align {
  margin-left: 27%;
}
.inquiry-template .form-section {
  grid-column-end: span 5;
}
@media only screen and (max-width: 1330px) {
  .inquiry-template .form-section {
    grid-column-end: span 8;
  }
}
.inquiry-template .form-section.right-align {
  grid-column-start: 7;
}
@media only screen and (max-width: 1330px) {
  .inquiry-template .form-section.right-align {
    grid-column-start: 5;
  }
}
@media only screen and (max-width: 980px) {
  .inquiry-template .form-step4 {
    margin-top: var(--section-pad);
  }
}
.inquiry-template .subtitle {
  line-height: 1.5;
}
@media only screen and (max-width: 550px) {
  .inquiry-template .subtitle {
    line-height: 1.3;
  }
}
.inquiry-template .alert {
  font-style: italic;
}
.inquiry-template .alert .subtitle {
  line-height: 1.45;
}
.inquiry-template .number {
  font-style: normal;
}
.inquiry-template .field {
  margin-top: 4rem;
  position: relative;
}
.inquiry-template .text-input {
  width: 100%;
  border-bottom: 1px solid white;
  color: white;
  height: 32px;
}
.inquiry-template label {
  display: block;
  color: rgb(130, 130, 130);
}
.inquiry-template label.placeholder {
  transition: transform 300ms ease-in-out;
  position: absolute;
  left: 0;
  top: 0;
}
.inquiry-template .moved {
  transform: translateY(-32px);
}
.inquiry-template .button {
  background: white;
  border: 0;
  border-radius: 0;
  padding: 1rem;
  color: black;
  width: 330px;
}
.inquiry-template .button:hover {
  font-style: italic;
  cursor: pointer;
}
.inquiry-template .radio-option {
  display: flex;
  margin-bottom: 1rem;
}
.inquiry-template .radio-option input {
  -webkit-appearance: none;
  -moz-appearance: none;
  outline: none;
  width: 25px;
  height: 25px;
  border: 1px solid white;
  border-radius: 50%;
  background: transparent;
}
.inquiry-template .radio-option input:checked {
  background: white;
}
.inquiry-template .radio-option input:hover {
  cursor: pointer;
}
.inquiry-template .radio-option label {
  margin-left: 1rem;
  color: white;
  line-height: 1;
  flex: 1;
}
.inquiry-template .radio-option label:hover {
  cursor: pointer;
}
@media only screen and (max-width: 980px) {
  .inquiry-template .radio-option label {
    line-height: 1.2;
  }
}
.inquiry-template input.newsletter {
  color: white;
}

.input-range {
  margin-top: 94px;
}
.input-range .noUi-target {
  border-radius: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  border-top: 1px solid white;
}
.input-range .noUi-target .noUi-handle {
  background: white;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  border: 1px solid white;
  top: -12px;
}
.input-range .noUi-target .noUi-handle:hover {
  cursor: pointer;
}
.input-range .noUi-target .noUi-handle:before {
  display: none;
}
.input-range .noUi-target .noUi-handle:after {
  display: none;
}
.input-range .noUi-target .noUi-connect {
  top: -1px;
  height: 3px;
  background: white;
}
.input-range .noUi-target .noUi-connects {
  border-radius: 0;
}
@media only screen and (max-width: 980px) {
  .input-range {
    width: 80%;
  }
}

#error .page-title {
  margin-bottom: var(--pad);
}

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