/**
 * FILE 3: assets/preloader.css
 * Location: wp-content/plugins/advanced-preloader/assets/preloader.css
 * Advanced Preloader Styles
 */

@keyframes shapes-phase-1 {
  0% {
    transform: translateX(-54.8%);
  }
  100% {
    transform: translateX(-25%);
  }
}

@keyframes clipped-light-1 {
  0% {
    transform: translateX(-51%);
  }
  100% {
    transform: translateX(-28.9%);
  }
}

@keyframes shapes-phase-2 {
  0% {
    transform: translateX(-25%);
  }
  100% {
    transform: translateX(13.7%);
  }
}

@keyframes clipped-light-2 {
  0% {
    transform: translateX(-28.9%);
  }
  100% {
    transform: translateX(0%);
  }
}

.shapes-phase-1 {
  animation: shapes-phase-1 0.8s ease-out forwards !important;
}

.shapes-phase-2 {
  animation: shapes-phase-2 0.6s ease-in-out forwards !important;
}

.clipped-light-1 {
  animation: clipped-light-1 0.8s ease-out forwards !important;
}

.clipped-light-2 {
  animation: clipped-light-2 0.6s ease-in-out forwards !important;
}

.shapes-phase-3 {
    transform: translateX(13.7%) !important;
}

.clipped-light-3 {
    transform: translateX(0%) !important;
}

#advanced-preloader {
  position: fixed;
  z-index: 99999;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: black;
  transition: opacity 0.6s ease-out;
}

#advanced-preloader.inactive {
  pointer-events: none;
  opacity: 0;
}

#advanced-preloader.hidden {
  display: none;
}

.loader-wrapper {
  width: 450px;
  height: 360px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: 0px;
  margin-bottom: 0px;
  padding: 100px 50px;
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow: inset 0 2px 5px #000;
}

.bar {
  width: 286px;
  height: 2px;
  flex: 0 auto;
  position: relative;
  overflow: visible;
  margin-top: 20px;
}

.clipped-light {
  z-index: 21;
  width: 200%;
  height: 130%;
  background-image: linear-gradient(270deg, #1e1e1e 50%, #0ff 50%, #0083ef 74%, #1e1e1e);
  position: relative;
  transform: translateX(-51%);
}

.shapes-group {
  width: 429px;
  height: 429px;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  bottom: -213px;
  left: -10px;
  transform: translateX(-54.8%);
}

.clipper {
  z-index: 10;
  width: 286px;
  height: 2px;
  background-color: #1e1e1e;
  position: relative;
  overflow: hidden;
  border-radius: 1px;
}

.overlay {
  position: absolute;
  z-index: 50;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(to right, black 17%, hsla(0, 0%, 0%, 0) 18.2%), 
                    linear-gradient(to right, hsla(0, 0%, 0%, 0) 86%, hsl(0, 0%, 0%)), 
                    radial-gradient(circle closest-side at 50% 50%, hsla(0, 0%, 0%, 0) 78%, hsl(0, 0%, 0%) 97%);
}

.cast-blur {
  z-index: 3;
  opacity: 0.2;
  filter: blur(40px);
  position: absolute;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
}

.shadow {
  z-index: 4;
  filter: blur(20px);
  position: absolute;
}

.bar-glow {
  z-index: 5;
  filter: blur(4px);
  position: absolute;
}

.mid-glow {
  z-index: 6;
  filter: blur(6px);
  mix-blend-mode: normal;
  position: absolute;
}

.top-glow-2 {
  z-index: 30;
  opacity: 1;
  filter: blur(2px);
  mix-blend-mode: soft-light;
  position: absolute;
}

.top-glow-1 {
  z-index: 31;
  opacity: 0.6;
  filter: blur(11px);
  position: absolute;
}

.top-glow-3 {
  z-index: 31;
  opacity: 0.2;
  filter: blur(0.8px);
  position: absolute;
}

.shapes-overlay {
  z-index: 10;
  width: 440px;
  height: 440px;
  background-image: radial-gradient(circle farthest-side, rgba(0, 0, 0, 0) 61%, #000);
  position: absolute;
  left: 50px;
}

.logo {
  z-index: 520;
  height: 46px;
  width: 46px;
  margin-bottom: 20px;
  margin-left: 6px;
  position: relative;
}

/* Responsive Design */
@media (max-width: 768px) {
  .loader-wrapper {
    width: 90%;
    max-width: 400px;
    padding: 80px 30px;
  }
  
  .bar {
    width: 240px;
  }
  
  .clipper {
    width: 240px;
  }
  
  .shapes-group {
    width: 360px;
    height: 360px;
	bottom: -179px;
    left: -48px;  
  }
  
  .shapes-overlay {
    width: 370px;
    height: 370px;
    left: 40px;
  }
}

@media (max-width: 480px) {
  .loader-wrapper {
    padding: 60px 20px;
  }
  
  .logo {
    height: 36px;
    width: 36px;
  }
  
  .bar {
    width: 200px;
  }
  
  .clipper {
    width: 200px;
  }
}

.loader-wrapper img.logo {
    width: 100px !important;
    height: auto !important;
}