/* =========================================================
   Mettalytics – global styles
   Migrated from Slater project 16192 (Nov 2026)
   Loaded site-wide from Site settings > Custom code > Head
   ========================================================= */


/* ---------------------------------------------------------
   Custom (was Slater 43570.css)
   --------------------------------------------------------- */

/* Preloader hide in design mode */
.wf-editor-active .preloader_wrap, .wf-design-mode .preloader_wrap {
   display: none !important; 
}

/* NOTE: In Slater this media query was never closed, so everything below
   it only applied on desktop (992px+). The closing brace is added at the
   end of this section to keep the site behaving exactly as it does now. */
@media (min-width: 992px) {

  .hide {
    display: none !important;
  }

  /* NOTE: This never applies, because it sits inside the 992px+ query above
     (a screen can't be both 992px+ and under 767px). Left as-is for now. */
  @media (max-width: 767px) {
    .hide-mobile {
      display: none !important;
    }
  }

  /* Underline link */

  .underline-link {
    position: relative;
    display: inline-block;
  }

  .underline-link::before,
  .underline-link.is--alt::before,
  .underline-link.is--alt::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0.08em;
    background-color: currentColor;
    transition: transform 0.735s cubic-bezier(0.625, 0.05, 0, 1);
    transform-origin: left;
    transform: scaleX(0) rotate(0.001deg);
  }

  /* Hover in */
  .underline-link:hover::before {
    transform-origin: left;
    transform: scaleX(1) rotate(0.001deg);
  }

  /* Alt style – plays in reverse */
  .underline-link.is--alt::before {
    transform-origin: left;
    transform: scaleX(1) rotate(0.001deg);
    transition-delay: 0.3s;
  }

  .underline-link.is--alt:hover::before {
    transform-origin: right;
    transform: scaleX(0) rotate(0.001deg);
    transition-delay: 0s;
  }

  .underline-link.is--alt::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0.08em;
    background-color: currentColor;
    transform-origin: right;
    transform: scaleX(0) rotate(0.001deg);
    transition: transform 0.735s cubic-bezier(0.625, 0.05, 0, 1);
    transition-delay: 0s;
  }

  .underline-link.is--alt:hover::after {
    transform-origin: left;
    transform: scaleX(1) rotate(0.001deg);
    transition-delay: 0.3s;
  }

} /* end @media (min-width: 992px) */


/* ---------------------------------------------------------
   Lenis smooth scroll (was Slater 43564.css)
   --------------------------------------------------------- */

html.lenis {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}


/* ---------------------------------------------------------
   Carousel overlay (was Slater 43781.css, Home page only)
   Safe site-wide: these classes only exist on the Home page.
   --------------------------------------------------------- */

.carousel_trigger:hover .carousel_trigger_icon_wrap {
  background: var(--_theme---button-primary--background-hover);
  color: var(--_theme---button-primary--text-hover);
}

body.is-locked {
  overflow: hidden;
}

.carousel_progress_bar::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 0%;
  background-color: var(--_theme---button-primary--text);
  transition: width 3s linear;
}

.carousel_progress_bar.is-active::after {
  width: 100%;
}

.carousel_progress_bar.no-transition::after {
  transition: none !important;
}
