body.lab-project-single-page,
body.lab-project-single-page .container-wrap,
body.lab-project-single-page .lab-project-single-wrap {
  background: #fff;
}

body.lab-project-single-page .container-wrap,
body.lab-project-single-page .lab-project-single-wrap {
  padding: 0 !important;
}

body.lab-project-single-page #footer-outer {
  display: none;
}

body.lab-project-single-page #to-top {
  display: none !important;
}

body.lab-project-single-page #header-outer,
body.lab-project-single-page #header-outer.transparent,
body.lab-project-single-page #header-outer.small-nav,
body.lab-project-single-page #header-outer.scrolled-down {
  background-color: transparent !important;
  background-image: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

body.lab-project-single-page #top .slide-out-widget-area-toggle .label {
  color: #fff !important;
  font: 400 20px/24px Barlow, sans-serif !important;
  text-transform: uppercase;
}

body.lab-project-single-page #header-outer #logo img,
body.lab-project-single-page #top .slide-out-widget-area-toggle .label,
body.lab-project-single-page #top .slide-out-widget-area-toggle .lines,
body.lab-project-single-page #top .slide-out-widget-area-toggle .lines::before,
body.lab-project-single-page #top .slide-out-widget-area-toggle .lines::after,
body.lab-project-single-page #top .slide-out-widget-area-toggle .lines-button::after {
  transition: background-color 160ms ease-out, color 160ms ease-out, filter 160ms ease-out;
}

body.lab-project-single-page #top .slide-out-widget-area-toggle .lines,
body.lab-project-single-page #top .slide-out-widget-area-toggle .lines::before,
body.lab-project-single-page #top .slide-out-widget-area-toggle .lines::after,
body.lab-project-single-page #top .slide-out-widget-area-toggle .lines-button::after {
  background-color: #fff !important;
}

body.lab-project-single-page.lab-project-single-video-active #header-outer #logo img {
  filter: brightness(0) invert(1) !important;
}

body.lab-project-single-page.lab-project-single-video-active #top .slide-out-widget-area-toggle .label {
  color: #fff !important;
}

body.lab-project-single-page.lab-project-single-video-active #top .slide-out-widget-area-toggle .lines,
body.lab-project-single-page.lab-project-single-video-active #top .slide-out-widget-area-toggle .lines::before,
body.lab-project-single-page.lab-project-single-video-active #top .slide-out-widget-area-toggle .lines::after,
body.lab-project-single-page.lab-project-single-video-active #top .slide-out-widget-area-toggle .lines-button::after {
  background-color: #fff !important;
}

.lab-project-single {
  background: #fff;
  color: var(--lab-ink);
  overflow: clip;
}

.lab-project-single__intro {
  box-sizing: border-box;
  min-height: 1080px;
  overflow: hidden;
  padding: 205px max(24px, calc((100% - 1740px) / 2)) 0;
  position: relative;
}

.lab-project-single__title-block {
  margin: 0 auto;
  position: relative;
  text-align: center;
  z-index: 2;
}

.lab-project-single-motion-ready .lab-project-single__title-block .lab-project-single__eyebrow,
.lab-project-single-motion-ready .lab-project-single__title-block h1,
.lab-project-single-motion-ready .lab-project-single__statistics li,
.lab-project-single-motion-ready .lab-project-single__hero {
  opacity: 0;
  left: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-height: none !important;
  max-width: none !important;
  right: 0 !important;
  will-change: opacity, transform;
}

.lab-project-single-motion-ready .lab-project-single__ornament {
  opacity: 1;
  will-change: opacity, left, top;
}

.lab-project-single-motion-ready .lab-project-single__hero-image {
  transform: scale(1.06);
  will-change: transform;
}

.lab-project-single-motion-ready .lab-project-single__hero-shade {
  opacity: .75;
  will-change: opacity;
}

.lab-project-single__eyebrow {
  align-items: center;
  color: var(--lab-blue);
  display: flex;
  gap: 12px;
  margin: 0 0 4px;
}

.lab-project-single__title-block .lab-project-single__eyebrow {
  justify-content: center;
}

.lab-project-single__eyebrow::before {
  background: var(--lab-blue);
  border-radius: 50%;
  content: '';
  flex: 0 0 auto;
  height: 12px;
  width: 12px;
}

.lab-project-single h1 {
  color: var(--lab-ink);
  margin: 0;
}

.lab-project-single h1 .lab-project-single__location {
  color: var(--lab-blue);
  display: block;
  line-height: 1;
}

.lab-project-single h1 .lab-project-single__address {
  color: var(--lab-ink);
  display: block;
  filter: none;
  font-size: .72em;
  line-height: .9;
  mix-blend-mode: normal;
  position: relative;
  z-index: 1;
}

.lab-project-single h1 .lab-project-single__address.lab-project-single__address--reverse {
  color: var(--lab-ink);
}

.lab-project-single h1 .lab-project-single__address.lab-project-single__address--reverse::after {
  clip-path: inset(var(--lab-address-reverse-clip));
  color: #fff;
  content: attr(data-lab-address);
  display: block;
  font: inherit;
  height: 100%;
  left: 0;
  line-height: inherit;
  mix-blend-mode: difference;
  pointer-events: none;
  position: absolute;
  text-align: inherit;
  top: 0;
  white-space: inherit;
  width: 100%;
  mask-image: url('../images/projects/rivoli-corso-susa/ornament-right-dark-mask.svg');
  mask-mode: alpha;
  mask-position: var(--lab-address-reverse-mask-position);
  mask-repeat: no-repeat;
  mask-size: var(--lab-address-reverse-mask-size);
  -webkit-mask-image: url('../images/projects/rivoli-corso-susa/ornament-right-dark-mask.svg');
  -webkit-mask-mode: alpha;
  -webkit-mask-position: var(--lab-address-reverse-mask-position);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: var(--lab-address-reverse-mask-size);
}

.lab-project-single__statistics {
  display: flex;
  flex-wrap: nowrap;
  gap: clamp(24px, 7vw, 140px);
  justify-content: center;
  list-style: none;
  margin: 94px auto 0;
  max-width: 1060px;
  padding: 0;
  position: relative;
  text-align: center;
  z-index: 2;
}

.lab-project-single__statistics li {
  align-items: center;
  display: flex;
  flex: 0 1 clamp(140px, 8.4vw, 160px);
  flex-direction: column;
  min-width: 0;
}

.lab-project-single__stat-icon {
  align-items: center;
  background: #f5f7f7;
  border-radius: 50%;
  display: flex;
  height: 108px;
  justify-content: center;
  width: 108px;
}

.lab-project-single__stat-icon img {
  height: 54px;
  width: 54px;
}

.lab-project-single__statistics strong {
  color: var(--lab-ink);
  font: 600 clamp(19px, 1.146vw, 22px)/1.2 Barlow, sans-serif;
  margin-top: 25px;
  text-transform: uppercase;
}

.lab-project-single__statistics li > span:last-child {
  color: var(--lab-ink);
  font: 400 clamp(16px, 1.042vw, 20px)/1.35 Barlow, sans-serif;
  margin-top: 7px;
  white-space: nowrap;
}

.lab-project-single__ornament {
  max-width: none;
  pointer-events: none;
  position: absolute;
}

.lab-project-single__ornament--left {
  bottom: 218px;
  height: 465px;
  left: 0;
  opacity: .78;
  width: 293px;
}

.lab-project-single__ornament--right {
  height: 880px;
  right: 0;
  top: -30px;
  width: 440px;
}

.lab-project-single__hero {
  aspect-ratio: 16 / 9;
  height: auto;
  margin: -260px auto 0;
  overflow: hidden;
  position: relative;
  width: var(--lab-shell);
  z-index: 3;
}

.lab-project-single__hero picture,
.lab-project-single__hero-image {
  display: block;
  height: 100%;
  width: 100%;
}

.lab-project-single__hero-image {
  object-fit: cover;
  object-position: 50% 50%;
  transform-origin: 50% 50%;
}

.lab-project-single__hero-video {
  background: #000;
  border: 0;
  display: block;
  height: 100% !important;
  inset: 0;
  max-height: 100%;
  max-width: 100%;
  position: absolute;
  width: 100% !important;
  z-index: 1;
}

.lab-project-single__hero-video--file {
  object-fit: cover;
}

.lab-project-single__mute {
  align-items: center;
  appearance: none;
  background: rgba(0, 0, 0, .42);
  border: 1px solid rgba(255, 255, 255, .72);
  border-radius: 50%;
  box-shadow: none;
  box-sizing: border-box;
  color: #fff;
  cursor: pointer;
  display: flex;
  font-size: 18px;
  height: 48px;
  justify-content: center;
  line-height: 1;
  margin: 0;
  padding: 0;
  position: absolute;
  bottom: 20px;
  left: 20px;
  text-transform: none;
  transition: background-color .2s ease, transform .2s ease;
  width: 48px;
  z-index: 3;
}

.lab-project-single__mute:hover {
  background: rgba(0, 0, 0, .68);
  color: #fff;
  transform: scale(1.05);
}

.lab-project-single__mute:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 4px;
}

.lab-project-single__mute:active {
  transform: scale(.98);
}

.lab-project-single__mute-icon[hidden] {
  display: none;
}

.lab-project-single__mute .fa {
  line-height: 1;
}

.lab-project-single__hero-shade {
  background: rgba(24, 28, 29, .47);
  inset: 0;
  position: absolute;
}

.lab-project-single__video {
  align-items: center;
  color: #fff;
  display: flex;
  flex-direction: column;
  font: 400 20px/1.2 Barlow, sans-serif;
  gap: 22px;
  left: 50%;
  position: absolute;
  text-decoration: none;
  top: 50%;
  transform: translate(-50%, -50%);
}

.lab-project-single__video-button {
  display: grid;
  height: 96px;
  place-items: center;
  transition: transform .35s cubic-bezier(.22, 1, .36, 1);
  width: 96px;
}

.lab-project-single__video-button img {
  grid-area: 1 / 1;
}

.lab-project-single__video:hover .lab-project-single__video-button {
  transform: scale(1.08) rotate(3deg);
}

.lab-project-single__video:hover .lab-project-single__video-button img:last-child,
.lab-project-single__video:focus-visible .lab-project-single__video-button img:last-child {
  transform: translateX(4px);
}

.lab-project-single__video-button img:last-child {
  transition: transform .35s cubic-bezier(.22, 1, .36, 1);
}

.lab-project-single__video:focus-visible,
.lab-project-single__related-card a:focus-visible,
.lab-project-single__to-top:focus-visible {
  outline: 3px solid var(--lab-blue);
  outline-offset: 5px;
}

.lab-project-single__gallery {
  --lab-project-gallery-gap: clamp(16px, 1.6vw, 28px);
  box-sizing: border-box;
  display: grid;
  gap: var(--lab-project-gallery-gap);
  grid-auto-flow: row;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 220px max(24px, calc((100% - 1740px) / 2)) 170px;
  position: relative;
}

.lab-project-single__gallery-item {
  aspect-ratio: 4 / 3;
  display: block;
  margin: 0;
  opacity: 1;
  overflow: hidden;
  transition: opacity 1.05s cubic-bezier(.22, 1, .36, 1), transform 1.05s cubic-bezier(.22, 1, .36, 1), filter 1.05s ease;
  transform: translate3d(0, 0, 0);
}

.lab-project-single__gallery-trigger {
  appearance: none;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: inherit;
  cursor: zoom-in;
  display: block;
  font: inherit;
  height: 100%;
  margin: 0;
  padding: 0;
  text-align: inherit;
  width: 100%;
}

.lab-project-single__gallery-trigger:focus-visible {
  outline: 3px solid var(--lab-blue);
  outline-offset: -4px;
}

.lab-project-single-motion-ready .lab-project-single__gallery-item {
  opacity: .3;
  filter: blur(2px) saturate(.72);
  transform: translate3d(0, 12px, 0);
}

.lab-project-single__gallery-item.is-active,
.lab-project-single__gallery-item:focus-within {
  opacity: 1;
  filter: blur(0) saturate(1);
  transform: translate3d(0, 0, 0);
}

.lab-project-single__gallery-image {
  display: block;
  height: 100%;
  object-fit: cover;
  object-position: center;
  width: 100%;
}

body.lab-project-single-lightbox-open {
  overflow: hidden;
}

.lab-project-single__lightbox[hidden] {
  display: none !important;
}

.lab-project-single__lightbox {
  align-items: center;
  display: flex;
  inset: 0;
  opacity: 0;
  padding: 72px 96px;
  position: fixed;
  visibility: hidden;
  z-index: 10000;
}

.lab-project-single__lightbox.is-open {
  opacity: 1;
  visibility: visible;
}

.lab-project-single__lightbox-backdrop {
  background: rgba(32, 34, 33, .96);
  inset: 0;
  position: absolute;
}

.lab-project-single__lightbox-dialog {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  position: relative;
  width: 100%;
  z-index: 1;
}

.lab-project-single__lightbox-figure {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0;
  max-height: 100%;
  max-width: 100%;
}

.lab-project-single__lightbox-image {
  display: block;
  height: auto;
  max-height: calc(100vh - 144px);
  max-width: calc(100vw - 192px);
  object-fit: contain;
  width: auto;
}

.lab-project-single__lightbox-caption {
  color: #fff;
  font: 400 14px/1.35 Barlow, sans-serif;
  margin-top: 14px;
  max-width: min(680px, calc(100vw - 192px));
  text-align: center;
}

.lab-project-single__lightbox-counter {
  bottom: 22px;
  color: rgba(255, 255, 255, .72);
  font: 400 14px/1 Barlow, sans-serif;
  left: 50%;
  margin: 0;
  position: absolute;
  transform: translateX(-50%);
}

.lab-project-single__lightbox-close,
.lab-project-single__lightbox-nav {
  align-items: center;
  appearance: none;
  background: rgba(255, 255, 255, .1);
  border: 0;
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  display: flex;
  justify-content: center;
  margin: 0;
  padding: 0;
  position: absolute;
  transition: background-color .2s ease, color .2s ease;
  z-index: 2;
}

.lab-project-single__lightbox-close {
  font-size: 22px;
  height: 48px;
  right: 20px;
  top: 20px;
  width: 48px;
}

.lab-project-single__lightbox-nav {
  font-size: 18px;
  height: 52px;
  top: 50%;
  transform: translateY(-50%);
  width: 52px;
}

.lab-project-single__lightbox-nav--previous {
  left: 20px;
}

.lab-project-single__lightbox-nav--next {
  right: 20px;
}

.lab-project-single__lightbox-close:hover,
.lab-project-single__lightbox-nav:hover {
  background: var(--lab-blue);
}

.lab-project-single__lightbox-close:focus-visible,
.lab-project-single__lightbox-nav:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 4px;
}

.lab-project-single__related-stage {
  height: auto;
  min-height: 0;
  position: relative;
}

.lab-project-single__related {
  background: #fff;
  box-sizing: border-box;
  height: auto;
  min-height: 0;
  overflow-x: auto;
  overflow-y: hidden;
  padding: clamp(145px, 19vh, 205px) 0 90px;
  position: relative;
}

.lab-project-single__related-heading {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: 0 auto 96px;
  position: relative;
  width: var(--lab-shell);
  z-index: 2;
}

.lab-project-single__related-heading h2 {
  color: var(--lab-ink);
  margin: 18px 0 0;
}

.lab-project-single__related-heading h2 span {
  color: var(--lab-blue);
}

.lab-project-single__related-heading .lab-button {
  margin: 0;
}

.lab-project-single__related-viewport {
  overflow: visible;
}

.lab-project-single__related-track {
  display: flex;
  gap: 22px;
  padding: 0 max(24px, calc((100% - 1740px) / 2));
  will-change: transform;
}

.lab-project-single__related-card {
  flex: 0 0 clamp(350px, 21.72vw, 417px);
  opacity: 1;
  transition: opacity .55s cubic-bezier(.22, 1, .36, 1), transform .55s cubic-bezier(.22, 1, .36, 1);
  transform: translate3d(0, 0, 0);
}

.lab-project-single-motion-ready .lab-project-single__related-card {
  opacity: .14;
  transform: translate3d(0, 10px, 0);
}

.lab-project-single__related-card--span-4 {
  flex-basis: clamp(440px, 29.48vw, 566px);
}

.lab-project-single__related-card--span-5 {
  flex-basis: clamp(540px, 37.14vw, 713px);
}

.lab-project-single__related-card.is-active,
.lab-project-single__related-card:focus-within {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.lab-project-single__related-card a {
  color: var(--lab-ink);
  display: block;
  text-decoration: none;
}

.lab-project-single__related-card figure {
  height: clamp(300px, 23.125vw, 444px);
  margin: 0;
  overflow: hidden;
}

.lab-project-single__related-card .lab-project-index-card__image,
.lab-project-single__related-card .lab-project-index-card__placeholder {
  display: block;
  height: 100%;
  object-fit: cover;
  transition: transform .35s ease;
  width: 100%;
}

.lab-project-single__related-card a:hover .lab-project-index-card__image {
  transform: scale(1.02);
}

.lab-project-single__related-content {
  align-items: center;
  display: flex;
  gap: 24px;
  padding: 18px 0 0;
}

.lab-project-single__related-content img {
  height: 25px;
  width: 19px;
}

.lab-project-single__related-content strong {
  font-weight: 600;
  margin-left: 2px;
}

.lab-project-single__related-progress {
  background: #d8dada;
  bottom: 105px;
  height: 7px;
  left: 50%;
  overflow: hidden;
  position: absolute;
  transform: translateX(-50%);
  width: var(--lab-shell);
}

.lab-project-single__related-progress span {
  background: var(--lab-blue);
  display: block;
  height: 100%;
  transform: translate3d(0, 0, 0);
  transition: transform .45s cubic-bezier(.22, 1, .36, 1);
  width: 15.6%;
}

.lab-project-single__footer-stage {
  background: #fff;
  min-height: 0;
  padding-top: 125px;
  position: relative;
}

.lab-project-single__footer-stage .lab-footer {
  position: relative;
}

.lab-project-single__to-top {
  align-items: center;
  background: var(--lab-ink);
  border-radius: 50%;
  color: #fff;
  display: flex;
  font: 300 34px/1 Barlow, sans-serif;
  height: 64px;
  justify-content: center;
  opacity: 1;
  position: absolute;
  right: min(4.948vw, 95px);
  text-decoration: none;
  top: -87px;
  transition: opacity .25s ease, transform .45s cubic-bezier(.22, 1, .36, 1), background-color .25s ease;
  width: 64px;
  z-index: 4;
}

.lab-project-single__to-top:hover {
  background-color: var(--lab-blue);
}

.lab-project-single__to-top.is-visible {
  opacity: 1;
}

@media (min-width: 1200px) {
  body.lab-project-single-page .lab-project-single-wrap {
    margin-top: -110px !important;
  }

  .lab-project-single-motion-ready .lab-project-single__related-stage {
    height: 430vh;
    min-height: 3400px;
  }

  .lab-project-single-motion-ready .lab-project-single__ornament {
    bottom: auto;
    position: fixed;
    right: auto;
    z-index: 2;
  }

  .lab-project-single-motion-ready .lab-project-single__ornament--left {
    height: 682.823px;
    left: -69px;
    top: 397px;
    width: 362px;
  }

  .lab-project-single-motion-ready .lab-project-single__ornament--right {
    height: 915px;
    left: 1369px;
    top: -30px;
    width: 485.092px;
  }

  @media (min-width: 1921px) {
    .lab-project-single-motion-ready .lab-project-single__ornament--right {
      /* Keep the artwork anchored to the right on wider desktop canvases. */
      left: calc(100vw - 440px);
    }
  }

  .lab-project-single-motion-ready .lab-project-single__related {
    height: 100vh;
    min-height: 720px;
    overflow: hidden;
    position: sticky;
    top: 0;
  }

  .lab-project-single-motion-ready .lab-project-single__footer-stage {
    min-height: calc(min(38.802vw, 745px) + min(15.156vw, 291px));
    padding-top: 0;
  }

  .lab-project-single-motion-ready .lab-project-single__footer-stage .lab-footer {
    position: sticky;
    top: max(0px, calc(100vh - min(38.802vw, 745px)));
  }

  body.lab-project-single-page .lab-footer__wordmark {
    bottom: 0;
    display: block;
    height: min(11.406vw, 219px) !important;
    left: 0;
    margin: 0;
    max-width: none;
    position: absolute;
    width: min(72.482vw, 1391.646px) !important;
  }

  .lab-project-single-motion-ready .lab-project-single__to-top {
    opacity: 0;
    visibility: hidden;
  }

  .lab-project-single-motion-ready .lab-project-single__to-top.is-visible {
    opacity: 1;
    visibility: visible;
  }

  body.lab-project-single-page #header-outer,
  body.lab-project-single-page #header-outer #top,
  body.lab-project-single-page #header-outer #top > .container,
  body.lab-project-single-page #header-outer #top > .container > .row,
  body.lab-project-single-page #header-outer #top .col,
  body.lab-project-single-page #header-outer #top nav,
  body.lab-project-single-page #header-outer #top nav > ul,
  body.lab-project-single-page #header-outer #top nav > ul > li {
    height: 110px !important;
  }

  body.lab-project-single-page #header-outer #logo,
  body.lab-project-single-page #header-outer.small-nav #logo {
    margin-bottom: 35px !important;
    margin-top: 35px !important;
  }

  body.lab-project-single-page #header-outer #logo img,
  body.lab-project-single-page #header-outer.small-nav #logo img {
    height: 40px !important;
    width: auto !important;
  }
}

@media (max-width: 1199px) {
  .lab-project-single__intro {
    min-height: 720px;
    padding-top: 160px;
  }

  .lab-project-single__ornament {
    opacity: .12;
  }

  .lab-project-single__statistics {
    gap: 30px;
    margin-top: 70px;
  }

  .lab-project-single__statistics li {
    flex-basis: clamp(120px, 18vw, 160px);
  }

  .lab-project-single__hero {
    aspect-ratio: 16 / 9;
    height: auto;
    margin-top: -90px;
  }

  .lab-project-single__gallery {
    --lab-project-gallery-gap: clamp(16px, 2.35vw, 24px);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding-top: 160px;
  }

  .lab-project-single__related-stage {
    height: auto;
    min-height: 0;
  }

  .lab-project-single__related {
    height: auto;
    min-height: 0;
    overflow-x: auto;
    padding: 120px 0 90px;
    position: relative;
  }

  .lab-project-single__related-heading {
    margin-bottom: 64px;
  }

  .lab-project-single__related-track {
    padding-right: 24px;
    transform: none !important;
  }

  .lab-project-single__related-card {
    opacity: 1;
  }

  .lab-project-single__related-card figure {
    height: clamp(280px, 42vw, 420px);
  }

  .lab-project-single__related-progress {
    bottom: 45px;
  }
}

@media (max-width: 767px) {
  .lab-project-single__intro {
    min-height: 0;
    padding: 128px 20px 76px;
  }

  .lab-project-single__statistics {
    gap: 38px 14px;
    flex-wrap: wrap;
    margin-top: 64px;
  }

  .lab-project-single__statistics li {
    flex-basis: calc(50% - 7px);
  }

  .lab-project-single__stat-icon {
    height: 78px;
    width: 78px;
  }

  .lab-project-single__stat-icon img {
    height: 42px;
    width: 42px;
  }

  .lab-project-single__statistics strong {
    font-size: 17px;
    margin-top: 16px;
  }

  .lab-project-single__statistics li > span:last-child {
    font-size: 14px;
    white-space: normal;
  }

  .lab-project-single__ornament {
    display: none;
  }

  .lab-project-single__hero {
    aspect-ratio: 4 / 5;
    margin: 0;
    width: 100%;
  }

  .lab-project-single__video {
    font-size: 17px;
  }

  .lab-project-single__gallery {
    --lab-project-gallery-gap: 16px;
    grid-template-columns: minmax(0, 1fr);
    padding: 128px 20px 90px;
  }

  .lab-project-single__gallery-item,
  .lab-project-single__gallery-item.is-active {
    opacity: 1;
  }

  .lab-project-single__lightbox {
    padding: 64px 20px 72px;
  }

  .lab-project-single__lightbox-image {
    max-height: calc(100vh - 160px);
    max-width: calc(100vw - 40px);
  }

  .lab-project-single__lightbox-caption {
    max-width: calc(100vw - 40px);
  }

  .lab-project-single__lightbox-close {
    right: 16px;
    top: 16px;
  }

  .lab-project-single__lightbox-nav {
    bottom: 16px;
    top: auto;
    transform: none;
  }

  .lab-project-single__lightbox-nav--previous {
    left: 20px;
  }

  .lab-project-single__lightbox-nav--next {
    right: 20px;
  }

  .lab-project-single__lightbox-counter {
    bottom: 34px;
  }

  .lab-project-single__related {
    padding-top: 88px;
  }

  .lab-project-single__related-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 28px;
    margin-bottom: 45px;
  }

  .lab-project-single__related-card {
    flex-basis: min(82vw, 390px);
  }

  .lab-project-single__related-card figure {
    height: min(82vw, 390px);
  }

  .lab-project-single__related-content {
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 8px 14px;
  }

  .lab-project-single__related-progress {
    width: calc(100% - 40px);
  }

  .lab-project-single__footer-stage {
    min-height: 0;
    padding-top: 125px;
  }

  .lab-project-single__footer-stage .lab-footer {
    position: relative;
  }

  .lab-project-single__to-top {
    right: 20px;
    top: 35px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lab-project-single__gallery-item,
  .lab-project-single__related-card,
  .lab-project-single__video-button,
  .lab-project-single__related-card .lab-project-index-card__image,
  .lab-project-single__to-top {
    transition: none;
    transform: none !important;
    filter: none !important;
  }

  .lab-project-single__gallery-item,
  .lab-project-single__related-card {
    opacity: 1;
  }
}
