html, body{
    font-family: 'Josefin Sans', sans-serif;
    font-size: 20px;
}

/* Pre-loader */

.drawing{
    width: 100vw;
    height: 100vh;
    position: fixed;
    z-index: 999;
    display: block;
    background-color: #212529;
}


.loading-dot {
    border-radius:100%;
    height:10px;
    width:10px;
    background-color: #5b37eb;
    position:absolute;
    left:0;
    right:0;
    margin:auto;
    top:0;
    bottom:0;
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    40px 40px 0px 0px #5b37eb,-40px -40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb;
    -webkit-animation: load 3s infinite linear;
    -moz-animation: load 3s infinite linear;
    -o-animation: load 3s infinite linear;
    animation:load 3s infinite linear;
}


@-webkit-keyframes load {
  0%   {
    -webkit-transform: translate(0px,0px),rotate(0deg); 
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    40px 40px 0px 0px #5b37eb,-40px -40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb;
  }

  25%{
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    -40px -40px 0px 0px #5b37eb,40px 40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb;
  }

  50%{
    box-shadow: 0px -40px 0px 0px #5b37eb,0px 40px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,
    -40px -40px 0px 0px #5b37eb,40px 40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb;
  }

  70%{
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
  }

  75%{
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    height:10px;
    width:10px;
  }

  80%{
    -webkit-transform: translate(0px,0px) rotate(360deg); 
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    background-color: #5b37eb;
    height:40px;
    width:40px;
  }

  85%{
    -webkit-transform: translate(0px,0px) rotate(360deg);
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    background-color: #5b37eb; 
    height:40px;
    width:40px;
  }

  90%{
    -webkit-transform: translate(0px,0px) rotate(360deg); 
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    background-color: #5b37eb; 
    height:10px;
    width:10px;
  }

  95%{
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    40px 40px 0px 0px #5b37eb,-40px -40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb;
  }

  100%{
    -webkit-transform: rotate(360deg);
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    40px 40px 0px 0px #5b37eb,-40px -40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb;
  }

}

@-moz-keyframes load {
  0%   {
    -moz-transform: translate(0px,0px),rotate(0deg); 
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    40px 40px 0px 0px #5b37eb,-40px -40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb;
  }

  25%{
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    -40px -40px 0px 0px #5b37eb,40px 40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb;
  }

  50%{
    box-shadow: 0px -40px 0px 0px #5b37eb,0px 40px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,
    -40px -40px 0px 0px #5b37eb,40px 40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb;
  }

  70%{
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
  }

  75%{
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    height:10px;
    width:10px;
  }

  80%{
    -moz-transform: translate(0px,0px) rotate(360deg); 
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    background-color: #5b37eb;
    height:40px;
    width:40px;
  }

  85%{
    -moz-transform: translate(0px,0px) rotate(360deg);
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    background-color: #5b37eb; 
    height:40px;
    width:40px;
  }

  90%{
    -moz-transform: translate(0px,0px) rotate(360deg); 
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    background-color: #5b37eb; 
    height:10px;
    width:10px;
  }

  95%{
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    40px 40px 0px 0px #5b37eb,-40px -40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb;
  }

  100%{
    -moz-transform: rotate(360deg);
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    40px 40px 0px 0px #5b37eb,-40px -40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb;
  }

}

@keyframes load {
  0%   {
    transform: translate(0px,0px),rotate(0deg); 
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    40px 40px 0px 0px #5b37eb,-40px -40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb;
  }

  25%{
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    -40px -40px 0px 0px #5b37eb,40px 40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb;
  }

  50%{
    box-shadow: 0px -40px 0px 0px #5b37eb,0px 40px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,
    -40px -40px 0px 0px #5b37eb,40px 40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb;
  }

  70%{
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
  }

  75%{
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    height:10px;
    width:10px;
  }

  80%{
    transform: translate(0px,0px) rotate(360deg); 
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    background-color: #5b37eb;
    height:40px;
    width:40px;
  }

  85%{
    transform: translate(0px,0px) rotate(360deg);
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    background-color: #5b37eb; 
    height:40px;
    width:40px;
  }

  90%{
    transform: translate(0px,0px) rotate(360deg); 
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    background-color: #5b37eb; 
    height:10px;
    width:10px;
  }

  95%{
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    40px 40px 0px 0px #5b37eb,-40px -40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb;
  }

  100%{
    transform: rotate(360deg);
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    40px 40px 0px 0px #5b37eb,-40px -40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb;
  }

}
@-o-keyframes load {
  0%   {
    -o-transforms: translate(0px,0px),rotate(0deg); 
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    40px 40px 0px 0px #5b37eb,-40px -40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb;
  }

  25%{
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    -40px -40px 0px 0px #5b37eb,40px 40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb;
  }

  50%{
    box-shadow: 0px -40px 0px 0px #5b37eb,0px 40px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,
    -40px -40px 0px 0px #5b37eb,40px 40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb;
  }

  70%{
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
  }

  75%{
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    height:10px;
    width:10px;
  }

  80%{
    -o-transforms: translate(0px,0px) rotate(360deg); 
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    background-color: #5b37eb;
    height:40px;
    width:40px;
  }

  85%{
    -o-transforms: translate(0px,0px) rotate(360deg);
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    background-color: #5b37eb; 
    height:40px;
    width:40px;
  }

  90%{
    -o-transforms: translate(0px,0px) rotate(360deg); 
    box-shadow: 0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,
    0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb,0px 0px 0px 0px #5b37eb;
    background-color: #5b37eb; 
    height:10px;
    width:10px;
  }

  95%{
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    40px 40px 0px 0px #5b37eb,-40px -40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb;
  }

  100%{
    -o-transforms: rotate(360deg);
    box-shadow: 0px 40px 0px 0px #5b37eb,0px -40px 0px 0px #5b37eb,40px 0px 0px 0px #5b37eb,-40px 0px 0px 0px #5b37eb,
    40px 40px 0px 0px #5b37eb,-40px -40px 0px 0px #5b37eb,40px -40px 0px 0px #5b37eb,-40px 40px 0px 0px #5b37eb;
  }

}

/* Animated background */

.gradient {
    --size: 500px;
    --speed: 50s;
    --easing: cubic-bezier(0.8, 0.2, 0.2, 0.8);
    width: var(--size);
    height: var(--size);
    filter: blur(calc(var(--size) / 5));
    background-image: linear-gradient(#37eba9d9, #5b37eb);
    animation: rotate var(--speed) var(--easing) alternate infinite;
    border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
}
#container {
  /* background-color: #222; */
  position: absolute;
  inset: 0;
  top: 180px;
  z-index: -1;
  display: flex;
  place-content: center;
  /* align-items: center; */
  /* overflow: hidden; */
}

/* This is just to transition when you change the viewport size. */
* {
transition: all 0.25s ease-out;
}

/* Media queries */

@media (min-width: 2000px){
  #homePage{
    height: 80vh!important;
  }
}


/* Big viewport */
@media (min-width: 720px){
.gradient {
  --size: 600px;
}
#homeContent{
  margin-top: 10rem;
}
  /* Navbar hover */
.navbar-nav .link:after {
  content: "";
  position: relative;
  width: 0%;
  height: 2px;
  display: block;
  transition: all 0.3s ease;
  bottom: 15%;
}
.navbar-nav .link:hover::after {
  width: 100%;
  height: 2px;
  background-color: #5b37eb;
}

@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
}

/* Small viewport */
@media (max-width: 575px) {
    .gradient {
        --size: 350px;
    }
    #homeContent{
      display: block!important;
      text-align: center;
      margin-top: 5rem;
    }
    #aboutText{
      text-align: center;
    }
    i{
      font-size: 3rem!important;
    }
    #sqlIcon{
      height: 61px;
    }
    #cvBtnDiv{
      text-align: center;
    }
    #cvBtn{
      margin-left: 0!important;
    }
    .projectImg, .overlay{
      width: 92vw!important;
    }
    .projectText{
      margin: 0.5rem 0 1.5rem 1.5rem!important;
      /* text-align: center; */
    }
    .overlay{
      padding: 10px!important;
    }
    #contactBtn{
      padding: 5px;
    }
    #contactForm{
      margin-left: 0!important;
      margin-right: 0!important;
    }
}
#contactBtn{
  background-color: #212529;
}
#about{
  scroll-margin-top: 80px;
  background: #1a1e21;
}
#skills{
  scroll-margin-top: 50px;
}
#cv{
  scroll-margin-top: 30px;
  background: #1a1e21;
}
#selfImg{
  width: 270px;
  background-color: #5b37eb;
  border-color: #5b37eb;
}
.underline{
  text-decoration-color: #5b37eb!important;
}
i{
  font-size: 5rem;
  color: #388990;
}
.custom-tooltip {
  --bs-tooltip-bg: #5b37eb;
  --bs-tooltip-color: var(--bs-white);
}
.cvItem{
  border-color: #5b37eb!important;
}
.cvItem::before{
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  border-radius: 50px;
  translate: -29px 0;
  background: #5b37eb;
  border: 2px solid #5b37eb;
}
#cvBtn, #submitBtn{
  border-color: #5b37eb;
  background-color: #5b37eb;
}
#cvBtn:hover{
  border-color: #5b37eb;
  background-color: #482BBC;
}
.projectImg{
  width: 28rem;
  height: auto;
  border: solid 3px #5b37eb;
}
.overlay {
  position: absolute;
  border-radius: 0 0 0.375rem 0.375rem;
  border-bottom: solid 3px #5b37eb;
  border-left: solid 3px #5b37eb;
  border-right: solid 3px #5b37eb;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  width: 28rem;
  transition: .5s ease;
  color: white;
  font-size: 20px;
  padding: 20px;
  text-align: center;
}
.img-container {
  position: relative;
} 
#contact{
  background-color: #1a1e21;
  max-width: 100%;
}
.hr{
  margin: 0;
  background-color: #1a1e21;
}
#inputMessage{
  height: 200px;
}
#contactForm{
  margin-left: 20%;
  margin-right: 20%;
}
#successToast{
  background-color: #5b37eb;
}