@font-face {
  font-family: Newgrotesk;
  src: url('../fonts/NewGrotesk-Regular.otf') format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Newgrotesk Mono;
  src: url('../fonts/NewGrotesk-MediumMono.otf') format("opentype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Migrationmono;
  src: url('../fonts/MigrationMono-Regular.otf') format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  --background--base: white;
  --font--sans: Newgrotesk, Arial, sans-serif;
  --font--mono: "Newgrotesk Mono", sans-serif;
  --background--text--base: #000;
  --type--h2: .5rem;
  --type--line-height: 100%;
  --type--body: .875rem;
  --font--weight--normal: 400;
  --margin: 1.25rem;
  --background--text--hover: gray;
  --font--weight--medium: 500;
  --background--grey: gainsboro;
  --background--brand: #f9ef35;
}

.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

body {
  background-color: var(--background--base);
  font-family: var(--font--sans);
  color: #333;
  font-size: 14px;
  line-height: 20px;
}

h2 {
  font-family: var(--font--mono);
  color: var(--background--text--base);
  font-size: var(--type--h2);
  line-height: var(--type--line-height);
  text-transform: uppercase;
  margin-top: 20px;
  margin-bottom: 0;
  font-weight: 700;
}

p {
  font-family: var(--font--sans);
  color: var(--background--text--base);
  font-size: var(--type--body);
  font-weight: var(--font--weight--normal);
  text-align: left;
  line-height: calc(var(--type--line-height) * 1.3);
  text-wrap: pretty;
  margin-bottom: .5rem;
}

a {
  color: var(--background--text--base);
  text-decoration: none;
}

.body-info {
  background-color: var(--background--base);
}

.nav_desktop_wrap {
  z-index: 9998;
  padding-top: var(--margin);
  padding-bottom: calc(var(--margin) * 2);
  mix-blend-mode: difference;
  position: fixed;
  inset: 0% 0% auto;
}

.nav_desktop_contain {
  margin-right: var(--margin);
  margin-left: var(--margin);
}

.nav_desktop_layout {
  grid-column-gap: var(--margin);
  grid-row-gap: var(--margin);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.nav_link_item {
  font-family: var(--font--sans);
  color: var(--background--base);
  font-size: var(--type--body);
  line-height: var(--type--line-height);
  text-decoration: none;
  transition: color .2s cubic-bezier(.215, .61, .355, 1);
  display: inline;
}

.nav_link_item:hover {
  color: var(--background--text--hover);
}

.nav_link_item.w--current {
  mix-blend-mode: difference;
}

.main {
  flex: 1;
}

.containter {
  margin-right: var(--margin);
  margin-left: var(--margin);
}

.grid {
  grid-column-gap: var(--margin);
  grid-row-gap: var(--margin);
  margin-top: calc(var(--margin) * 4);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

.grid.is--footer {
  padding-bottom: var(--margin);
  margin-top: var(--margin);
}

.content_wrapper {
  flex-flow: column;
  gap: 2rem;
  display: flex;
}

.heading_2 {
  font-weight: var(--font--weight--medium);
  letter-spacing: .125rem;
  margin-top: 0;
  margin-bottom: 0;
}

.heading_2.is--difference {
  z-index: 100;
  color: var(--background--base);
}

.paragraph_wrapper {
  flex-flow: column;
  display: flex;
}

.info_list {
  margin-bottom: 0;
  padding-left: 0;
  list-style-type: none;
}

.info_list_item {
  font-family: var(--font--sans);
  color: var(--background--text--base);
  font-size: var(--type--body);
  line-height: var(--type--line-height);
}

.link {
  line-height: calc(var(--type--line-height) * 1.3);
  transition-property: color;
  transition-duration: .2s;
  transition-timing-function: cubic-bezier(.215, .61, .355, 1);
}

.link:hover {
  color: var(--background--text--hover);
}

.content_group {
  flex-flow: column;
  gap: .5rem;
  display: flex;
}

.client-item {
  line-height: calc(var(--type--line-height) * 1.2);
}

.name {
  width: 100%;
  color: var(--background--grey);
}

.page-wrapper {
  flex-flow: column;
  min-height: 100dvh;
  display: flex;
}

.footer-link {
  transition: color .2s;
}

.footer-link:hover {
  color: var(--background--text--hover);
}

.name_wrapper.transition {
  width: 100%;
}

.work-list_wrapper {
  margin-top: 5rem;
  margin-bottom: var(--margin);
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
}

.work-list {
  grid-column-gap: var(--margin);
  grid-row-gap: var(--margin);
  justify-content: start;
  column-gap: var(--margin);
  row-gap: var(--margin);
  flex-flow: wrap;
  grid-template-rows: auto auto;
  grid-template-columns: repeat(10, minmax(0, 1fr));
  grid-auto-columns: 1fr;
  display: grid;
}

.work-image_wrapper {
  cursor: none;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.work-image {
  object-fit: contain;
  object-position: 0% 0%;
  max-height: 80dvh;
  display: block;
}

.bottom {
  width: 100%;
  position: fixed;
  inset: auto auto 0% 0%;
}

.work-detail_wrapper {
  z-index: 100;
  width: 50%;
  margin-bottom: var(--margin);
  margin-left: var(--margin);
  color: var(--background--base);
  mix-blend-mode: difference;
  position: fixed;
  inset: auto auto 0% 0%;
}

.work-detail-list {
  height: 2.25rem;
  position: relative;
}

.work-detail {
  flex-flow: column;
  gap: .25rem;
  display: flex;
  position: absolute;
  inset: auto auto 0% 0%;
}

.detail-wrapper {
  gap: 1rem;
  display: flex;
}

.role-list {
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  gap: .25rem;
  display: flex;
}

.role-list.no--gap {
  grid-column-gap: .5rem;
  grid-row-gap: 0rem;
}

.role-item {
  display: flex;
}

.info-wrapper {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  flex-flow: column;
  display: flex;
}

.swiper {
  height: 100dvh;
  overflow: hidden;
}

.swiper-wrapper {
  flex-flow: row;
  justify-content: flex-start;
  align-items: center;
  height: 100dvh;
  display: flex;
}

.swiper-slide {
  min-width: 100vw;
  height: 100%;
  padding: calc(var(--margin) * 6);
  justify-content: center;
  align-items: center;
}

.image {
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.video-card-visual__video {
  object-fit: contain;
  width: 100%;
  height: 100%;
  padding: 0;
}

.code-embed {
  height: 100%;
}

.swiper_button_wrapper {
  z-index: 999;
  inset: calc(var(--margin) * 6);
  position: absolute;
}

.next-slide-button {
  z-index: 999;
  cursor: pointer;
  background-color: #fff0;
  width: 50%;
  height: 100%;
  position: absolute;
  inset: 0% 0% 0% auto;
}

.next-slide-text {
  z-index: 2000;
  opacity: 0;
  font-family: var(--font--mono);
  color: var(--background--text--base);
  letter-spacing: 5px;
  text-transform: uppercase;
  position: fixed;
  transform: translate(-50%, -50%);
}

.prev-slide-button {
  z-index: 999;
  cursor: pointer;
  background-color: #fff0;
  width: 50%;
  height: 100%;
  position: absolute;
  inset: 0% auto 0% 0%;
}

.bottom-wrapper {
  z-index: 999;
  margin-right: var(--margin);
  margin-bottom: var(--margin);
  margin-left: var(--margin);
  grid-column-gap: var(--margin);
  grid-row-gap: var(--margin);
  color: var(--background--text--base);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
  position: absolute;
  inset: auto 0% 0%;
}

.swiper_counter {
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  display: flex;
}

.role-work-item.is-black {
  color: var(--background--text--base);
}

.page-transition {
  z-index: 900;
  background-color: var(--background--base);
  opacity: 0;
  pointer-events: none;
  width: 100vw;
  height: 100vh;
  padding: calc(var(--margin) * 4);
  justify-content: center;
  align-items: center;
  display: flex;
  position: fixed;
  inset: 0%;
}

.nav_text {
  font-family: var(--font--sans);
  color: var(--background--base);
  font-size: var(--type--body);
  line-height: var(--type--line-height);
  text-decoration: none;
  display: inline;
}

.nav_text.w--current {
  mix-blend-mode: difference;
}

.work-video {
  width: 100%;
}

.custom-cursor {
  font-family: var(--font--mono);
  color: var(--background--base);
  font-size: var(--type--h2);
  line-height: 1;
  font-weight: var(--font--weight--medium);
  letter-spacing: .125rem;
  mix-blend-mode: difference;
  display: inline-block;
}

.cursor-next {
  display: inline;
}

.client {
  line-height: calc(var(--type--line-height) * 1.3);
}

.next-project-button {
  z-index: 900;
  cursor: pointer;
  background-color: #fff0;
  width: 50%;
  height: 100%;
  position: absolute;
  inset: 0% 0% 0% auto;
}

.next-project-button.is--last {
  z-index: 899;
}

.previous-project-button {
  z-index: 900;
  cursor: pointer;
  background-color: #fff0;
  width: 50%;
  height: 100%;
  position: absolute;
  inset: 0% auto 0% 0%;
}

.previous-project-button.is--last {
  z-index: 899;
}

.prev-next-link, .prev-next-link.w--current {
  width: 100%;
  height: 100%;
}

.prev-next-item {
  cursor: none;
  width: 100%;
  height: 100%;
}

.collection-list-wrapper {
  display: none;
}

.project-info-wrapper {
  justify-content: flex-start;
  align-items: flex-end;
  display: flex;
}

.project-info:hover {
  color: var(--background--text--hover);
}

.project-info-modal {
  z-index: 1000;
  background-color: var(--background--base);
  opacity: 0;
  justify-content: center;
  align-items: flex-end;
  display: none;
  position: absolute;
  inset: 0%;
}

.close-info-wrapper {
  justify-content: flex-start;
  align-items: flex-end;
  display: flex;
}

.project-info-content-wrapper {
  width: 100%;
  margin-right: var(--margin);
  margin-bottom: 4rem;
  margin-left: var(--margin);
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  place-items: start stretch;
  display: grid;
}

.grid-wrapper {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  flex-flow: column;
  display: flex;
}

.grid-wrapper.has--two {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
}

.grid-2x2 {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  grid-auto-flow: row;
  display: grid;
}

.credit-text {
  margin-bottom: 0;
}

.role-wrapper, .year-wrapper {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  flex-flow: column;
  display: flex;
}

.end-button {
  z-index: 991;
  cursor: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.start-button {
  z-index: 991;
  cursor: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0% 0% 0% auto;
}

.idleclockoverlay {
  z-index: 9999;
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  background-color: var(--background--grey);
  opacity: 0;
  visibility: hidden;
  inset: 0%;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-items: center;
  display: grid;
  position: fixed;
  inset: 0;
}

.idleclocktext {
  color: var(--background--base);
  -webkit-user-select: none;
  user-select: none;
  font-family: Migrationmono, Arial, sans-serif;
  font-size: 16vw;
  line-height: 1;
}

.globalcode {
  display: none;
}

.cursor-view {
  display: inline;
}

.stage {
  z-index: 9999;
  width: 100vw;
  height: 100dvh;
  min-height: 100dvh;
  padding-top: var(--margin);
  padding-right: var(--margin);
  padding-bottom: var(--margin);
  padding-left: var(--margin);
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  background-color: var(--background--base);
  inset: 0%;
  grid-template-rows: auto auto auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: space-between;
  position: fixed;
  inset: 0;
}

.shuffle-line {
  opacity: 1;
  width: 100%;
  color: var(--background--grey);
  letter-spacing: .07em;
  white-space: nowrap;
  -webkit-user-select: none;
  user-select: none;
  font-family: Migrationmono, Arial, sans-serif;
  font-size: 120px;
  line-height: .82;
  transition-property: opacity;
  transition-duration: 1.8s;
  transition-timing-function: ease;
}

.type-animation {
  z-index: 99999;
  inset: 0%;
  justify-content: center;
  align-items: center;
  height: 100dvh;
  min-height: 100dvh;
  display: flex;
  position: fixed;
  inset: 0%;
}

.type-animation-grid {
  width: 100%;
  margin: var(--margin);
  grid-column-gap: var(--margin);
  grid-row-gap: var(--margin);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  place-items: center stretch;
  display: grid;
}

.animation-text {
  font-family: var(--font--sans);
  font-size: var(--type--body);
  line-height: var(--type--line-height);
  text-decoration: none;
  display: inline;
}

.animation-text.w--current {
  mix-blend-mode: difference;
}

.testing {
  font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
  font-size: 10vh;
}

.nav_info_toggle {
  font-family: var(--font--sans);
  color: var(--background--base);
  font-size: var(--type--body);
  line-height: var(--type--line-height);
  text-decoration: none;
  transition: color .2s cubic-bezier(.215, .61, .355, 1);
  display: inline;
}

.nav_info_toggle:hover {
  color: var(--background--text--hover);
}

.nav_info_toggle.w--current {
  mix-blend-mode: difference;
}

.utility-page-wrap {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  display: flex;
}

.utility-page-content {
  text-align: center;
  flex-direction: column;
  width: 260px;
  display: flex;
}

@media screen and (max-width: 991px) {
  .nav_desktop_layout {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }

  .grid {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }

  .work-list {
    grid-template-rows: auto;
  }

  .detail-wrapper {
    grid-column-gap: 1rem;
    grid-row-gap: 0rem;
    flex-flow: wrap;
  }

  .swiper-slide {
    padding: calc(var(--margin) * 4);
  }

  .swiper_button_wrapper {
    inset: calc(var(--margin) * 4);
  }

  .bottom-wrapper {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }

  .collection-list-wrapper {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .nav_desktop_layout {
    justify-content: space-between;
    align-items: center;
    display: flex;
  }

  .grid.is--footer {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .nav-link_wrapper.hidden-mobile {
    display: none;
  }

  .swiper_button_wrapper {
    inset: calc(var(--margin) * 4) calc(var(--margin) * 1);
  }

  .animation-text.is--mobile {
    display: none;
  }
}

@media screen and (max-width: 479px) {
  .nav_desktop_layout {
    justify-content: space-between;
    align-items: center;
    display: flex;
  }

  .containter {
    margin-bottom: var(--margin);
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    grid-template-rows: auto;
    grid-template-columns: 1fr;
    grid-auto-columns: 1fr;
    display: grid;
  }

  .grid {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr;
  }

  .grid.is--footer {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr 1fr;
    margin-top: 0;
  }

  .footer {
    margin-top: 0;
  }

  .nav-link_wrapper.hidden-mobile {
    display: none;
  }

  .work-list {
    grid-auto-flow: row;
  }

  .info-wrapper {
    display: none;
  }

  .swiper_button_wrapper {
    inset: calc(var(--margin) * 4) calc(var(--margin) * 0);
  }

  .prev-slide-button {
    z-index: 998;
  }

  .bottom-wrapper {
    grid-template-columns: 1fr 1fr;
  }

  .swiper_counter {
    justify-content: flex-end;
    align-items: flex-end;
  }

  .client {
    display: inline;
  }

  .project-info-modal {
    display: none;
  }

  .project-info-content-wrapper {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr 1fr;
  }

  .grid-wrapper.has--two {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }
}

#w-node-_46934f70-c607-20c2-f523-b7894485809f-2626aaec, #w-node-_46934f70-c607-20c2-f523-b789448580a0-2626aaec, #w-node-_46934f70-c607-20c2-f523-b789448580a1-2626aaec, #w-node-_46934f70-c607-20c2-f523-b789448580a2-2626aaec {
  place-self: center;
}

#w-node-_34e179a2-f106-1098-cea7-f4388e9c5fca-2626aaec, #w-node-_34e179a2-f106-1098-cea7-f4388e9c5fcd-2626aaec, #w-node-_2ca7b3f0-f4ae-7af6-fe79-ebf2632e9e28-632e9e25, #w-node-_2ca7b3f0-f4ae-7af6-fe79-ebf2632e9e29-632e9e25, #w-node-_2ca7b3f0-f4ae-7af6-fe79-ebf2632e9e2b-632e9e25, #w-node-_2ca7b3f0-f4ae-7af6-fe79-ebf2632e9e2e-632e9e25, #w-node-_2ca7b3f0-f4ae-7af6-fe79-ebf2632e9e2f-632e9e25, #w-node-e4b37d38-0199-3528-6017-00ceca5efded-3473bd60, #w-node-e4b37d38-0199-3528-6017-00ceca5efdee-3473bd60, #w-node-e4b37d38-0199-3528-6017-00ceca5efdf0-3473bd60, #w-node-e4b37d38-0199-3528-6017-00ceca5efdf3-3473bd60, #close-btn.w-node-e4b37d38-0199-3528-6017-00ceca5efdf4-3473bd60 {
  grid-area: span 1 / span 4 / span 1 / span 4;
}

#w-node-f16259ac-b447-8484-be02-b796a7138255-3473bd60 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_13df6470-67d5-e5f2-b022-7b9ed6adf5d9-3473bd60 {
  grid-area: 1 / 5 / 2 / 7;
}

#w-node-_04c57825-184b-3bca-e900-2de816b66925-3473bd60 {
  grid-area: 1 / 9 / 2 / 11;
}

#w-node-_1ed6e9b7-0e2b-20c0-29d8-8d133a96b51c-3473bd60 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_1ed6e9b7-0e2b-20c0-29d8-8d133a96b527-3473bd60 {
  grid-area: 1 / 5 / 2 / 7;
}

#w-node-_1ed6e9b7-0e2b-20c0-29d8-8d133a96b551-3473bd60 {
  grid-area: 1 / 9 / 2 / 11;
}

#w-node-_1b667b7b-dbd0-10e4-2a61-8da87de8f82c-3473bd60, #w-node-fe5187e8-5754-23b9-814b-72d8a12b836f-3473bd60, #w-node-_92b2643b-3a06-6b8b-a495-7ab6728eb013-3473bd60, #w-node-_25a59911-3aaf-3b12-13ec-b604add83b35-3473bd60 {
  place-self: center;
}

#w-node-_70d33246-241f-e1c5-177c-101b8fe24672-3473bd60, #w-node-_39e9073f-d880-1e86-770a-b8527302505f-3473bd60 {
  grid-area: span 1 / span 4 / span 1 / span 4;
}

#w-node-_40fb80fe-0e46-9b27-d244-2f0115633fd9-45ca349f {
  grid-area: span 1 / span 8 / span 1 / span 8;
}

#w-node-_9344ff93-38aa-8c23-0467-38d9ec858f76-45ca349f, #w-node-fbd50213-0f77-0216-4662-822b6e940c4d-45ca349f {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-e9fcebde-8791-291e-369b-e98c3cc8e6f8-45ca349f {
  grid-area: 1 / 9 / 2 / 11;
}

#w-node-_3721f35e-e052-d419-cc8b-5c8e44b5febb-45ca349f {
  grid-area: span 1 / span 3 / span 1 / span 3;
}

#w-node-_855e6ff7-7717-bb4a-5e09-c6f39626a2a1-45ca349f {
  grid-area: 1 / 5 / 2 / 7;
}

#w-node-_9aa9aacd-ffb3-d922-332b-2c74bac30af5-45ca349f {
  grid-area: 1 / 9 / 2 / 12;
}

@media screen and (max-width: 991px) {
  #w-node-_2ca7b3f0-f4ae-7af6-fe79-ebf2632e9e28-632e9e25 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }

  #w-node-_2ca7b3f0-f4ae-7af6-fe79-ebf2632e9e2b-632e9e25 {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }

  #w-node-_2ca7b3f0-f4ae-7af6-fe79-ebf2632e9e2e-632e9e25, #w-node-e4b37d38-0199-3528-6017-00ceca5efded-3473bd60 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }

  #w-node-e4b37d38-0199-3528-6017-00ceca5efdf0-3473bd60 {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }

  #w-node-e4b37d38-0199-3528-6017-00ceca5efdf3-3473bd60 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }

  #w-node-f16259ac-b447-8484-be02-b796a7138255-3473bd60 {
    grid-area: span 1 / span 3 / span 1 / span 3;
  }

  #w-node-_13df6470-67d5-e5f2-b022-7b9ed6adf5d9-3473bd60 {
    grid-area: 2 / 1 / 3 / 3;
  }

  #w-node-_04c57825-184b-3bca-e900-2de816b66925-3473bd60 {
    grid-area: 2 / 3 / 3 / 5;
  }

  #w-node-_40fb80fe-0e46-9b27-d244-2f0115633fd9-45ca349f {
    grid-column: span 2 / span 2;
  }

  #w-node-_9344ff93-38aa-8c23-0467-38d9ec858f76-45ca349f, #w-node-fbd50213-0f77-0216-4662-822b6e940c4d-45ca349f {
    grid-column: span 1 / span 1;
  }
}

@media screen and (max-width: 767px) {
  #w-node-_1ed6e9b7-0e2b-20c0-29d8-8d133a96b51c-3473bd60 {
    grid-column: span 1 / span 1;
  }

  #w-node-_1ed6e9b7-0e2b-20c0-29d8-8d133a96b527-3473bd60, #w-node-_1ed6e9b7-0e2b-20c0-29d8-8d133a96b551-3473bd60 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
}

@media screen and (max-width: 479px) {
  #w-node-f16259ac-b447-8484-be02-b796a7138255-3473bd60 {
    grid-column: span 2 / span 2;
  }

  #w-node-_13df6470-67d5-e5f2-b022-7b9ed6adf5d9-3473bd60, #w-node-_04c57825-184b-3bca-e900-2de816b66925-3473bd60 {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }

  #w-node-_08968cee-0d4d-f1e7-2f69-e63be4015c07-3473bd60 {
    grid-area: 2 / 1 / 3 / 3;
  }

  #w-node-_1ed6e9b7-0e2b-20c0-29d8-8d133a96b51b-3473bd60 {
    grid-area: 1 / 1 / 2 / 3;
  }

  #w-node-_1ed6e9b7-0e2b-20c0-29d8-8d133a96b51c-3473bd60 {
    grid-column: span 2 / span 2;
  }

  #w-node-_1ed6e9b7-0e2b-20c0-29d8-8d133a96b527-3473bd60, #w-node-_1ed6e9b7-0e2b-20c0-29d8-8d133a96b551-3473bd60, #w-node-e9fcebde-8791-291e-369b-e98c3cc8e6f8-45ca349f {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }

  #w-node-_3721f35e-e052-d419-cc8b-5c8e44b5febb-45ca349f {
    grid-column: span 2 / span 2;
  }

  #w-node-_855e6ff7-7717-bb4a-5e09-c6f39626a2a1-45ca349f, #w-node-_9aa9aacd-ffb3-d922-332b-2c74bac30af5-45ca349f {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }
}


@font-face {
  font-family: 'Newgrotesk';
  src: url('../fonts/NewGrotesk-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Newgrotesk Mono';
  src: url('../fonts/NewGrotesk-MediumMono.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Migrationmono';
  src: url('../fonts/MigrationMono-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
/* JSON migration additions */
.json-media-placeholder {
  width: 100%;
  min-height: 18vw;
  aspect-ratio: 4 / 3;
  background: #e9e9e9;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--margin);
  text-align: center;
}
.swiper-slide .json-media-placeholder { min-height: 100vh; aspect-ratio: auto; }


/* Local project navigation state */
.previous-project-button,
.next-project-button {
  transition: opacity 300ms ease;
}
