/* Performance overrides for faster first paint and safer mobile loading. */
html,
body {
  height: auto !important;
  overflow-y: auto !important;
  overscroll-behavior: auto !important;
  scroll-behavior: auto !important;
}

body {
  animation: vvr-page-enter 0.32s ease-out both;
}

body.is-page-leaving {
  opacity: 0;
  transition: opacity 0.2s ease;
}

@keyframes vvr-page-enter {
  from {
    opacity: 0.01;
  }
  to {
    opacity: 1;
  }
}

#smooth-wrapper,
#smooth-content {
  height: auto !important;
  min-height: 100%;
  overflow: visible !important;
  position: relative !important;
  transform: none !important;
  will-change: auto !important;
}

.loader-bg {
  display: none !important;
  pointer-events: none;
}

.intro-eff {
  min-height: 100vh;
  visibility: visible;
}

.intro-eff .hero-static {
  height: 100vh !important;
  min-height: 100vh;
  overflow: hidden;
  position: relative;
}

.intro-eff .hero-static > img {
  display: block !important;
  height: 100% !important;
  inset: 0;
  object-fit: cover;
  object-position: center center;
  opacity: 1 !important;
  position: absolute;
  transform: none !important;
  visibility: visible !important;
  width: 100% !important;
}

.native-video-bg .hero-video-poster {
  z-index: 0;
}

.native-video-bg .hero-native-video {
  display: block;
  height: 100%;
  inset: 0;
  object-fit: cover;
  object-position: center center;
  position: absolute;
  width: 100%;
  z-index: 1;
}

.js-split-lines-fade-up,
.js-split-lines-up,
.js-split-lines-left,
.js-split-words-up,
.js-split-chars-up,
.js-split-chars-letter-up,
.js-split-chars-left,
.js-split-rotate,
.js-split-chars-l,
.js-split-lines-fade-up *,
.js-split-lines-up *,
.js-split-lines-left *,
.js-split-words-up *,
.js-split-chars-up *,
.js-split-chars-letter-up *,
.js-split-chars-left *,
.js-split-rotate *,
.js-split-chars-l * {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

.percentage,
.loader-text {
  display: none !important;
}

.grid-item-img-h,
.grid-item-img-v {
  position: relative;
  overflow: hidden;
  background: #050505;
}

.js .grid-item-img-h img,
.js .grid-item-img-v img,
.grid-item-img-h img,
.grid-item-img-v img {
  display: block !important;
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  filter: none !important;
}

.grid-item-img-h img:nth-of-type(2),
.grid-item-img-v img:nth-of-type(2) {
  opacity: 0 !important;
  transition: opacity 0.35s ease;
}

.grid-item-img-h:hover img:nth-of-type(2),
.grid-item-img-v:hover img:nth-of-type(2) {
  opacity: 1 !important;
}

.grid-item-img-h canvas,
.grid-item-img-v canvas,
.grid-item-video canvas,
.grid-rgb-1 canvas,
.grid-rgb-2 canvas,
.grid-rgb-3 canvas,
.grid-trails-1 canvas,
.grid-trails-2 canvas,
.grid-trails-3 canvas,
.grid-stretch-1 canvas {
  display: none !important;
}

.img-link img {
  display: none !important;
}

.circle-lg .img-link {
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  min-height: 100%;
  padding: 2.25rem;
  text-align: center;
  width: 100%;
}

.circle-lg .img-link h3 {
  margin-bottom: 0.8rem;
  line-height: 1;
}

.circle-lg .img-link p {
  line-height: 1.45;
  margin-bottom: 0;
}

.process-static {
  align-items: center;
  display: flex;
  justify-content: center;
  width: 100%;
}

.process-static-col,
.process-static,
.process-static *,
.process-static .circle-lg {
  filter: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.process-static .circle-lg,
.process-static .circle-lg:hover,
.process-static .circle-lg:focus-within {
  border-color: rgba(255, 255, 255, 0.4) !important;
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  visibility: visible !important;
}

.process-static .img-link,
.process-static:hover .img-link,
.process-static .img-link:hover,
.process-static .img-link:focus {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}

.process-static .img-link h3,
.process-static .img-link p {
  opacity: 1 !important;
  visibility: visible !important;
}

.ol-dark-bottom {
  display: none !important;
}

.services-title-solid,
.services-title-solid * {
  -webkit-background-clip: initial !important;
  -webkit-text-fill-color: #CA4F13 !important;
  background: none !important;
  color: #CA4F13 !important;
}

@media (min-width: 768px) {
  .process-static .circle-lg {
    margin-bottom: 0;
  }
}

.slideshow-contact {
  height: 52vh !important;
  min-height: 420px;
  margin-bottom: 0 !important;
  overflow: hidden;
}

.slideshow-contact .vid-vh-40 {
  height: 52vh !important;
  min-height: 420px;
}

.slideshow-contact .jarallax-img,
.slideshow-contact .jarallax-container img {
  height: 100% !important;
  object-fit: cover;
  width: 100% !important;
}

.slideshow-contact .text-absolute-contact {
  font-size: clamp(2.4rem, 5vw, 5rem) !important;
  line-height: 1.1;
  padding: 0 8vw;
  top: 55% !important;
}

.slideshow-contact + section.m-section-150 {
  margin-bottom: 7rem !important;
  padding-top: 3.5rem;
}

.slideshow-contact + section .mt-8 {
  margin-top: 2rem !important;
}

.slideshow-contact + section .mt-10 {
  margin-top: 3rem !important;
}

.slideshow-contact + section .tt-section-inner {
  max-width: 960px;
  width: min(92vw, 960px);
}

.slideshow-contact + section .tt-form-control {
  min-height: 54px;
}

.slideshow-contact + section textarea.tt-form-control {
  min-height: 150px;
}

ul.accordion {
  overflow: hidden;
}

ul.accordion li:first-child {
  padding-top: 24px !important;
}

ul.accordion li:last-child {
  padding-bottom: 28px !important;
}

ul.accordion li p {
  line-height: 1.25 !important;
}

@media (max-width: 767px), (prefers-reduced-motion: reduce) {
  html,
  body {
    scroll-behavior: auto !important;
  }

  .loader-bg {
    display: none !important;
  }

  .percentage,
  .loader-text {
    display: none !important;
  }

  .cb-cursor {
    display: none !important;
  }

  .slideshow-contact,
  .slideshow-contact .vid-vh-40 {
    height: 46vh !important;
    min-height: 320px;
  }

  .slideshow-contact + section .tt-row .col-6 {
    width: 100%;
  }

  .slideshow-contact + section .tt-row .col-6 > div {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  [data-speed],
  [data-lag],
  .parallax-img-scale,
  .js-parallax-section {
    transform: none !important;
  }

  .grid-item-img-h canvas,
  .grid-item-img-v canvas,
  .grid-item-video canvas,
  .grid-rgb-1 canvas,
  .grid-rgb-2 canvas,
  .grid-rgb-3 canvas,
  .grid-trails-1 canvas,
  .grid-trails-2 canvas,
  .grid-trails-3 canvas,
  .grid-stretch-1 canvas {
    display: none !important;
  }
}

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