/* Firebase migration fidelity layer.
   The original layout, typography, spacing and animation engine remain intact. */

body[data-page-loader="false"] .alioth-page-loader {
  display: none !important;
}

.project-featured-video,
.pph-video,
.pph-video video,
.section-fixed-image .imgs,
.section-fixed-image .imgs video {
  background: #030303;
}

.pph-video video,
.section-fixed-image .imgs video,
.section-fixed-mobile video,
.process-video {
  object-fit: cover;
  object-position: center;
}

.pph-video video,
.section-fixed-image .imgs video,
.section-fixed-mobile video,
.process-video {
  opacity: 1;
  transition: opacity 0.32s ease;
}

video.is-changing {
  opacity: 0.52;
}

video.using-poster {
  opacity: 1;
}

.section-fixed-image .imgs {
  height: 100vh;
  overflow: hidden;
}

.section-fixed-image .imgs.fixedd {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: auto !important;
  left: auto !important;
}

body .section-fixed-image .imgs.notfix {
  position: absolute !important;
  top: auto !important;
  right: 0 !important;
  bottom: 0 !important;
  left: auto !important;
}

.leftside > .innerside .text-wrapper {
  transition: opacity 0.45s ease, transform 0.45s ease;
}

.leftside > .innerside:not(.is-active) .text-wrapper {
  opacity: 0.72;
  transform: translateY(12px);
}

.leftside > .innerside.is-active .text-wrapper {
  opacity: 1;
  transform: translateY(0);
}

.process-video {
  display: block;
  width: 100%;
  min-height: 52vw;
  max-height: 100vh;
  background: #030303;
}

.site-header {
  will-change: height;
}

.site-header .site-logo,
.site-header .header-widget {
  will-change: transform, opacity;
}

@media (max-width: 768px) {
  .section-fixed-mobile .we {
    margin-bottom: 80px;
  }

  .section-fixed-mobile video {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 11;
    min-height: 0;
    background: #030303;
  }

  .process-video {
    min-height: 64vw;
  }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

  video {
    display: block;
  }
}
