/* Easing functions */
/* Cursor */
.lg-cursor {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 100;
}
.lg-cursor--hover .lg-cursor-pointer:before {
  transform: scale(2);
}
.lg-cursor--hover--color .lg-cursor-pointer:nth-child(2):before {
  background-color: cyan;
}

.lg-cursor-pointer {
  position: absolute;
  top: 0;
  left: 0;
  will-change: transform;
  z-index: 2;
}
.lg-cursor-pointer:before {
  display: block;
  margin: -4px 0 0 -4px;
  width: 8px;
  height: 8px;
  background-color: white;
  border-radius: 50%;
  content: "";
  opacity: 1;
  transition: transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1), opacity 0.2s linear, background 0.2s linear;
}

.lg-cursor-trail {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.lg-cursor-trail svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.lg-cursor-trail path {
  fill: none;
  stroke: rgba(0, 255, 255, 0.25);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 4px;
}

html.lg-cursor-hide,
html.lg-cursor-hide * {
  cursor: none !important;
}

/* Loader */
.lg-loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  opacity: 0;
  pointer-events: none;
  z-index: 999;
}
.lg-loader.is-visible {
  opacity: 1;
  pointer-events: all;
}

/* Lottie */
.lg-loader--lottie {
  background: none;
}
.lg-loader--lottie svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
}

/* Fade */
.lg-loader--fade {
  transition: opacity 0.3s linear;
}

/* Slide */
.lg-loader--slide,
.lg-loader--slide-to-bottom,
.lg-loader--slide-to-left,
.lg-loader--slide-to-top,
.lg-loader--slide-to-right {
  opacity: 1;
}

.lg-loader--slide-to-left,
.lg-loader--slide-to-right {
  transform: scaleX(0);
  transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.lg-loader--slide-to-left.is-visible,
.lg-loader--slide-to-right.is-visible {
  transform: scaleX(1);
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.lg-loader--slide-to-left {
  transform-origin: 0 50%;
}
.lg-loader--slide-to-left.is-visible {
  transform-origin: 100% 50%;
}

.lg-loader--slide-to-right {
  transform-origin: 100% 50%;
}
.lg-loader--slide-to-right.is-visible {
  transform-origin: 0 50%;
}

.lg-loader--slide-to-bottom,
.lg-loader--slide-to-top {
  transform: scaleY(0);
  transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.lg-loader--slide-to-bottom.is-visible,
.lg-loader--slide-to-top.is-visible {
  transform: scaleY(1);
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.lg-loader--slide-to-bottom {
  transform-origin: 50% 100%;
}
.lg-loader--slide-to-bottom.is-visible {
  transform-origin: 50% 0;
}

.lg-loader--slide-to-top {
  transform-origin: 50% 0;
}
.lg-loader--slide-to-top.is-visible {
  transform-origin: 50% 100%;
}

/* Preloader */
.lg-preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  opacity: 1;
  z-index: 999;
}
.lg-preloader.is-hidden {
  opacity: 0;
}

/* Lottie */
.lg-preloader--lottie {
  background: none;
}

/* Fade */
.lg-preloader--fade {
  transition: opacity 0.3s linear;
}

/* Slide */
.lg-preloader--slide,
.lg-preloader--slide-to-top,
.lg-preloader--slide-to-right,
.lg-preloader--slide-to-bottom,
.lg-preloader--slide-to-left {
  transition: transform 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.lg-preloader--slide.is-hidden,
.lg-preloader--slide-to-top.is-hidden,
.lg-preloader--slide-to-right.is-hidden,
.lg-preloader--slide-to-bottom.is-hidden,
.lg-preloader--slide-to-left.is-hidden {
  opacity: 1;
}

.lg-preloader--slide-to-right.is-hidden {
  transform: translate3d(100%, 0, 0);
}

.lg-preloader--slide-to-left.is-hidden {
  transform: translate3d(-100%, 0, 0);
}

.lg-preloader--slide-to-top.is-hidden {
  transform: translate3d(0, -100%, 0);
}

.lg-preloader--slide-to-bottom.is-hidden {
  transform: translate3d(0, 100%, 0);
}

/* Reveal */
[data-lg-reveal],
.lg-reveal {
  opacity: 0;
  will-change: opacity, transform;
}
[data-lg-reveal].is-in,
.lg-reveal.is-in {
  opacity: 1;
}

[data-lg-reveal-stagger] {
  opacity: 1;
}

/* Fade */
.lg-reveal--fade-to-bottom,
.lg-reveal--fade-to-left,
.lg-reveal--fade-to-top,
.lg-reveal--fade-to-right,
.lg-reveal--fade-x,
.lg-reveal--fade-y,
.lg-reveal--fade-rotate,
.lg-reveal--fade-rotate-to-bottom,
.lg-reveal--fade-rotate-to-left,
.lg-reveal--fade-rotate-to-top,
.lg-reveal--fade-rotate-to-right,
.lg-reveal--fade-rotate-x,
.lg-reveal--fade-rotate-y,
.lg-reveal--fade-scale,
.lg-reveal--fade-scale-to-top,
.lg-reveal--fade-scale-to-right,
.lg-reveal--fade-scale-to-bottom,
.lg-reveal--fade-scale-to-left,
.lg-reveal--fade-scale-x,
.lg-reveal--fade-scale-y {
  transition: opacity 0.4s linear 0.2s, transform 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0s;
}
.lg-reveal--fade-to-bottom.is-in,
.lg-reveal--fade-to-left.is-in,
.lg-reveal--fade-to-top.is-in,
.lg-reveal--fade-to-right.is-in,
.lg-reveal--fade-x.is-in,
.lg-reveal--fade-y.is-in,
.lg-reveal--fade-rotate.is-in,
.lg-reveal--fade-rotate-to-bottom.is-in,
.lg-reveal--fade-rotate-to-left.is-in,
.lg-reveal--fade-rotate-to-top.is-in,
.lg-reveal--fade-rotate-to-right.is-in,
.lg-reveal--fade-rotate-x.is-in,
.lg-reveal--fade-rotate-y.is-in,
.lg-reveal--fade-scale.is-in,
.lg-reveal--fade-scale-to-top.is-in,
.lg-reveal--fade-scale-to-right.is-in,
.lg-reveal--fade-scale-to-bottom.is-in,
.lg-reveal--fade-scale-to-left.is-in,
.lg-reveal--fade-scale-x.is-in,
.lg-reveal--fade-scale-y.is-in {
  transform: translate3d(0, 0, 0) rotate(0) scale(1);
  transition: opacity 0.4s linear 0s, transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
}

.lg-reveal--fade {
  transition: opacity 0.3s linear;
}

.lg-reveal--fade-to-bottom {
  transform: translate3d(0, -10%, 0);
}

.lg-reveal--fade-to-left {
  transform: translate3d(10%, 0, 0);
}

.lg-reveal--fade-to-top {
  transform: translate3d(0, 10%, 0);
}

.lg-reveal--fade-to-right {
  transform: translate3d(-10%, 0, 0);
}

.lg-reveal--fade-x {
  transform: translate3d(-10%, 0, 0);
}
.lg-reveal--fade-x.is-out-top {
  transform: translate3d(10%, 0, 0);
}

.lg-reveal--fade-y {
  transform: translate3d(0, 10%, 0);
}
.lg-reveal--fade-y.is-out-top {
  transform: translate3d(0, -10%, 0);
}

.lg-reveal--fade-rotate {
  transform: rotate(-20deg);
}

.lg-reveal--fade-rotate-to-bottom {
  transform: translate3d(0, -30%, 0) rotate(-20deg);
}

.lg-reveal--fade-rotate-to-left {
  transform: translate3d(30%, 0, 0) rotate(20deg);
}

.lg-reveal--fade-rotate-to-top {
  transform: translate3d(0, 30%, 0) rotate(20deg);
}

.lg-reveal--fade-rotate-to-right {
  transform: translate3d(-30%, 0, 0) rotate(-20deg);
}

.lg-reveal--fade-rotate-x {
  transform: translate3d(-30%, 0, 0) rotate(-20deg);
}
.lg-reveal--fade-rotate-x.is-out-top {
  transform: translate3d(30%, 0, 0) rotate(20deg);
}

.lg-reveal--fade-rotate-y {
  transform: translate3d(0, 30%, 0) rotate(20deg);
}
.lg-reveal--fade-rotate-y.is-out-top {
  transform: translate3d(0, -30%, 0) rotate(-20deg);
}

.lg-reveal--fade-scale,
.lg-reveal--fade-scale-to-bottom,
.lg-reveal--fade-scale-to-left,
.lg-reveal--fade-scale-to-top,
.lg-reveal--fade-scale-to-right,
.lg-reveal--fade-scale-x,
.lg-reveal--fade-scale-y {
  transform: scale(0.8);
}

.lg-reveal--fade-scale-to-bottom {
  transform: translate3d(0, -30%, 0) scale(0.8);
}

.lg-reveal--fade-scale-to-left {
  transform: translate3d(30%, 0, 0) scale(0.8);
}

.lg-reveal--fade-scale-to-top {
  transform: translate3d(0, 30%, 0) scale(0.8);
}

.lg-reveal--fade-scale-to-right {
  transform: translate3d(-30%, 0, 0) scale(0.8);
}

.lg-reveal--fade-scale-x {
  transform: translate3d(-30%, 0, 0) scale(0.8);
}
.lg-reveal--fade-scale-x.is-out-top {
  transform: translate3d(30%, 0, 0) scale(0.8);
}

.lg-reveal--fade-scale-y {
  transform: translate3d(0, 30%, 0) scale(0.8);
}
.lg-reveal--fade-scale-y.is-out-top {
  transform: translate3d(0, -30%, 0) scale(0.8);
}

/* Scale */
.lg-reveal--scale,
.lg-reveal--scale-to-bottom,
.lg-reveal--scale-to-left,
.lg-reveal--scale-to-top,
.lg-reveal--scale-to-right,
.lg-reveal--scale-x,
.lg-reveal--scale-y {
  opacity: 1;
  transition: transform 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0s;
  transform: scale(0);
}
.lg-reveal--scale.is-in,
.lg-reveal--scale-to-bottom.is-in,
.lg-reveal--scale-to-left.is-in,
.lg-reveal--scale-to-top.is-in,
.lg-reveal--scale-to-right.is-in,
.lg-reveal--scale-x.is-in,
.lg-reveal--scale-y.is-in {
  transform: scale(1);
  transition: transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
}

.lg-reveal--scale-to-bottom {
  transform-origin: 50% 0;
}

.lg-reveal--scale-to-left {
  transform-origin: 100% 50%;
}

.lg-reveal--scale-to-top {
  transform-origin: 50% 100%;
}

.lg-reveal--scale-to-right {
  transform-origin: 0 50%;
}

.lg-reveal--scale-x {
  transform-origin: 0 50%;
}
.lg-reveal--scale-x.is-out-top {
  transform-origin: 100% 50%;
}

.lg-reveal--scale-y {
  transform-origin: 50% 100%;
}
.lg-reveal--scale-y.is-out-top {
  transform-origin: 50% 0;
}

/* Slide */
.lg-reveal--slide,
.lg-reveal--slide-to-bottom,
.lg-reveal--slide-to-top,
.lg-reveal--slide-to-left,
.lg-reveal--slide-to-right,
.lg-reveal--slide-x,
.lg-reveal--slide-y {
  opacity: 1;
  transition: transform 0.6s cubic-bezier(0.645, 0.045, 0.355, 1) 0s;
}
.lg-reveal--slide.is-in,
.lg-reveal--slide-to-bottom.is-in,
.lg-reveal--slide-to-top.is-in,
.lg-reveal--slide-to-left.is-in,
.lg-reveal--slide-to-right.is-in,
.lg-reveal--slide-x.is-in,
.lg-reveal--slide-y.is-in {
  transform: translate3d(0, 0, 0);
}

.lg-reveal--slide-to-bottom {
  transform: translate3d(0, -15%, 0);
}

.lg-reveal--slide-to-left {
  transform: translate3d(15%, 0, 0);
}

.lg-reveal--slide-to-top {
  transform: translate3d(0, 15%, 0);
}

.lg-reveal--slide,
.lg-reveal--slide-to-right {
  transform: translate3d(-15%, 0, 0);
}

.lg-reveal--slide-x {
  transform: translate3d(-15%, 0, 0);
}
.lg-reveal--slide-x.is-out-top {
  transform: translate3d(15%, 0, 0);
}

.lg-reveal--slide-y {
  transform: translate3d(0, 15%, 0);
}
.lg-reveal--slide-y.is-out-top {
  transform: translate3d(0, -15%, 0);
}

/* Layer */
.lg-reveal--layer,
.lg-reveal--layer-to-top,
.lg-reveal--layer-to-right,
.lg-reveal--layer-to-bottom,
.lg-reveal--layer-to-left {
  position: relative;
  opacity: 1;
  transition: transform 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, -webkit-clip-path 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0s;
  transition: transform 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, clip-path 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0s;
  transition: transform 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, clip-path 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0s, -webkit-clip-path 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0s;
}
.lg-reveal--layer:after,
.lg-reveal--layer-to-top:after,
.lg-reveal--layer-to-right:after,
.lg-reveal--layer-to-bottom:after,
.lg-reveal--layer-to-left:after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* background: white; */
  content: "";
  transition: transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  z-index: 999;
}
.lg-reveal--layer.is-in,
.lg-reveal--layer-to-top.is-in,
.lg-reveal--layer-to-right.is-in,
.lg-reveal--layer-to-bottom.is-in,
.lg-reveal--layer-to-left.is-in {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  transform: translate3d(0, 0, 0);
}

.lg-reveal--layer-to-top.is-in:after,
.lg-reveal--layer-to-bottom.is-in:after {
  transform: scaleY(0);
}

.lg-reveal--layer-to-top {
  -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
  clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
  transform: translate3d(0, 10%, 0);
}
.lg-reveal--layer-to-top:after {
  transform-origin: 50% 0;
}

.lg-reveal--layer-to-bottom {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
  transform: translate3d(0, -10%, 0);
}
.lg-reveal--layer-to-bottom:after {
  transform-origin: 50% 100%;
}

.lg-reveal--layer-to-right.is-in:after,
.lg-reveal--layer-to-left.is-in:after {
  transform: scaleX(0);
}

.lg-reveal--layer-to-right {
  -webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  transform: translate3d(-10%, 0, 0);
}
.lg-reveal--layer-to-right:after {
  transform-origin: 100% 50%;
}

.lg-reveal--layer-to-left {
  -webkit-clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
  clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
  transform: translate3d(10%, 0, 0);
}
.lg-reveal--layer-to-left:after {
  transform-origin: 0 50%;
}
