/* BACKGROUND ANIMATION */
body{
  background:linear-gradient(-45deg,#06101d,#102846,#173962,#0b1d33);
  background-size:400% 400%;
  animation:bgMove 15s ease infinite;
  color:#222;
  line-height:1.8;
  position:relative;
  overflow-x:hidden;
}

/* ANIMATION */
@keyframes bgMove{

  0%{
    background-position:0% 50%;
  }

  50%{
    background-position:100% 50%;
  }

  100%{
    background-position:0% 50%;
  }

}

/* FLOATING ORB */
body::before{
  content:"";
  position:fixed;
  width:350px;
  height:350px;
  background:rgba(0,255,255,.08);
  border-radius:50%;
  top:-120px;
  left:-120px;
  filter:blur(60px);
  animation:floatOrb 12s ease-in-out infinite;
  z-index:-1;
}

body::after{
  content:"";
  position:fixed;
  width:300px;
  height:300px;
  background:rgba(0,140,255,.08);
  border-radius:50%;
  bottom:-120px;
  right:-100px;
  filter:blur(60px);
  animation:floatOrb2 15s ease-in-out infinite;
  z-index:-1;
}

/* FLOAT */
@keyframes floatOrb{

  0%{
    transform:translate(0,0);
  }

  50%{
    transform:translate(60px,40px);
  }

  100%{
    transform:translate(0,0);
  }

}

@keyframes floatOrb2{

  0%{
    transform:translate(0,0);
  }

  50%{
    transform:translate(-50px,-30px);
  }

  100%{
    transform:translate(0,0);
  }

}

/* GLASS EFFECT */
.hero-content,
.article-card,
.widget{
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(8px);
}