:root {
  --site-motion-duration: 500ms;
  --site-motion-easing: cubic-bezier(0.25, 0.1, 0.25, 1);
}

.motion-reveal {
  transition:
    opacity var(--site-motion-duration) var(--site-motion-easing),
    transform var(--site-motion-duration) var(--site-motion-easing),
    filter var(--site-motion-duration) var(--site-motion-easing);
}

.motion-reveal.site-visible {
  opacity: 1 !important;
  filter: none !important;
  transform: none !important;
}

.faq_answer {
  height: 0;
  max-height: none !important;
  overflow: hidden;
  transition: height 400ms var(--site-motion-easing);
}

.faq_accordion.site-open .faq_answer {
  max-height: none !important;
}

.faq_question {
  cursor: pointer;
}

.faq_icon-line-vertical {
  transform-origin: 50% 50%;
  transition: transform 400ms var(--site-motion-easing);
}

.faq_accordion.site-open .faq_icon-line-vertical {
  transform: rotate(90deg);
}

@media (max-width: 991px) {
  .site-js .content27_sidebar:not(.site-toc-open) > .content27_sidebar-heading + * {
    display: none;
  }

  .content27_sidebar .content27_accordion-icon {
    transition: transform 200ms ease;
  }

  .content27_sidebar.site-toc-open .content27_accordion-icon {
    transform: rotate(180deg);
  }
}

.w-slider .w-slide {
  will-change: transform;
}

@media (max-width: 991px) {
  .w-nav-menu {
    display: none !important;
  }

  .w-nav-menu.site-open {
    display: block !important;
    position: absolute;
    inset: 100% 0 auto;
    width: 100vw;
    max-width: none;
    animation: site-nav-menu-in 400ms var(--site-motion-easing);
  }

  .navbar12_component.site-nav-open {
    background-color: var(--site-nav-open-background, var(--alt-color-scheme--background));
  }

  .menu-icon1_line-top,
  .menu-icon1_line-middle,
  .menu-icon1_line-bottom {
    transition:
      transform 200ms var(--site-motion-easing),
      opacity 200ms var(--site-motion-easing);
    transform-origin: center;
  }

  .navbar12_menu-button.w--open .menu-icon1_line-top {
    transform: translateY(8px) rotate(45deg);
  }

  .navbar12_menu-button.w--open .menu-icon1_line-middle {
    opacity: 0;
  }

  .navbar12_menu-button.w--open .menu-icon1_line-bottom {
    transform: translateY(-8px) rotate(-45deg);
  }
}

@keyframes site-nav-menu-in {
  from { opacity: 0; transform: translateY(-0.5rem); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 767px) {
  .layout351_accordion .layout351_column-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 400ms var(--site-motion-easing);
  }

  .layout351_accordion.site-open .layout351_column-content {
    max-height: 60rem;
  }
}

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

  .motion-reveal {
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
  }
}
