:root {
  --primary-color: #2600b1;
  --secondary-color: #d5d5d5;
  --link-color: #287dfc;
  --hover-color: #35f2ff;
  --font-color: #00126c;
  --bg-color1: #fffbd4; 
  --bg-color2: #ffdcea; 
  --bg-color3: #e0f7ff;
  --bg-color4: #e1fff8;
  --heading-color: #292922;
  --shadow-color1: rgba(0,0,0,0.18);
  --shadow-color2: rgba(0,0,0,0.15);
}

[data-theme="dark"] {
  --primary-color: #a7a4fa;
  --secondary-color: #ffb65d;
  --link-color: #fff8c6;
  --hover-color: #fff082;
  --font-color: #e1e1ff;
  --heading-color: #818cab;
  --bg-color1: #161625; 
  --bg-color2: #00005e; 
  --bg-color3: #342e00;
  --bg-color4: #013025;
  --shadow-color1: rgba(218, 218, 218, 0.18);
  --shadow-color2: rgba(249, 249, 249, 0.15);
}

body {
  font-family: 'Rubik', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  /* font-size: calc(18px + 0.33vw); */
  -webkit-font-smoothing: antialiased;

  min-height: 80vh;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;

	background: linear-gradient(-45deg, var(--bg-color1), var(--bg-color2), var(--bg-color3), var(--bg-color4));
	background-size: 400% 400%;
	-webkit-animation: gradient 25s ease infinite;
          animation: gradient 25s ease infinite;
  color: var(--font-color);
}

@-webkit-keyframes gradient {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

@keyframes gradient {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}


/*
    Site container
*/

.container {
  margin-top: 5em;
  margin-left: auto;
  margin-right: auto;
  width: 670px;
  position: relative;
}

/*48em*/

@media (max-width: 768px) {
  .container {
    width: 90vw;
  }
}

h1 {
  font-size: 4.5em;
  font-weight: 500;
  margin-bottom: 0;
}
p {
  font-size: 1.6em;
  font-weight: 300;
  line-height: 1.4;
  max-width: 26em;
}

.intro a {
  border-bottom: 3px solid transparent;
  text-decoration: none;
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
  color: var(--link-color);
  font-weight: 500;
}

.intro a:hover {
  border-bottom: 1.2px solid var(--hover-color);
}


.footer {
  color: var(--font-color);
  font-size: 0.8rem;
	text-align: center;
  margin: 1.2rem;
}

.footer a {
  color: var(--link-color);
  font-weight: 700;
	text-decoration: none;
}

.footer a:hover {
	color: var(--hover-color);
}

.footer .click-counter {
  font-size:0.8em;
  color: #ffffff4d;
}
.footer .click-counter a{
  color: #ffffff6c;
}
.footer .click-counter a:hover{
  color: #fff082;
}

.social-icons {
  font-size: 1.7em;
}

.social-icons .item {
  position:relative;
	-moz-border-radius:50%;
	-webkit-border-radius:50%;
  border-radius:50%;
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 42px;

  margin: 0.2em;
  transition: .3s all;
  position: relative;
  -webkit-transition: .3s all;
  text-align: center;
  color: var(--primary-color);
  -webkit-box-shadow: 0 5px 11px 0 var(--shadow-color1),0 4px 15px 0 var(--shadow-color2);
  -moz-box-shadow: 0 5px 11px 0 var(--shadow-color1),0 4px 15px 0 var(--shadow-color2);
  box-shadow: 0px 5px 11px 0px var(--shadow-color1), 0px 4px 15px 0px var(--shadow-color2);
}

.social-icons.spinned .item:hover {
  -webkit-animation: Social-Icons-Flipping .3s;
  animation: Social-Icons-Flipping .3s
}

.social-icons .item:hover {
  text-decoration: none;
  background-color: var(--primary-color);
  box-shadow: 0 -1px 0 transparent inset, 0 2px 3px rgba(0, 0, 0, .1), 0 4px 8px rgba(0, 0, 0, .3);
  color: var(--secondary-color);
}

.social-icons .linkedin:hover {
  background-color: #f9faff!important;
  color: #0072b1!important;
}

.social-icons .github:hover {
  background-color: rgb(41, 47, 58)!important;
  color: rgb(34, 141, 255)!important;
}

.social-icons .instagram:hover {
  background-color: rgb(226, 200, 249)!important;
  color: rgb(255, 58, 225)!important;
}

.social-icons .facebook:hover {
  background-color: #4267B2!important;
  color: #fff!important;
}



@-webkit-keyframes Social-Icons-Flipping {
  0% {
      -webkit-transform: rotate(0);
      transform: rotate(0)
  }
  100% {
      -webkit-transform: rotate(360deg);
      transform: rotate(360deg)
  }
}
@keyframes Social-Icons-Flipping {
  0% {
      -webkit-transform: rotate(0);
      transform: rotate(0)
  }
  100% {
      -webkit-transform: rotate(360deg);
      transform: rotate(360deg)
  }
}

span.wave {
  animation-name: wave-animation;    /* Refers to the name of your @keyframes element below */
  animation-duration: 2.5s;          /* Change to speed up or slow down */
  animation-iteration-count: 1;    /* Never stop waving :) */
  transform-origin: 70% 70%;         /* Pivot around the bottom-left palm */
  display: inline-block;
}

span.wave:hover {
  animation-name: wave-animation;    /* Refers to the name of your @keyframes element below */
  animation-duration: 2.5s;          /* Change to speed up or slow down */
  animation-iteration-count: infinite;    /* Never stop waving :) */
  transform-origin: 70% 70%;         /* Pivot around the bottom-left palm */
  display: inline-block;
}

@keyframes wave-animation {
    0% { transform: rotate(  0.0deg) }
   10% { transform: rotate(-10.0deg) }    /* The following four values can be played with to make the waving more or less extreme */
   20% { transform: rotate( 12.0deg) }
   30% { transform: rotate(-10.0deg) }
   40% { transform: rotate(  9.0deg) }
   50% { transform: rotate(  0.0deg) }    /* Reset for the last half to pause */
  100% { transform: rotate(  0.0deg) }
}

/*Simple css to style it like a toggle switch*/
.theme-switch-wrapper {
  margin: 7px 7px 7px 0px;
  display: flex;
  align-items: center;
}
.theme-switch-wrapper em {
  font-family: 'Mansalva', cursive;
  margin-left: 5px;
  padding-bottom: 7px;
  font-size: 0.8em;
}
.theme-switch {
  display: inline-block;
  height: 12px;
  position: relative;
  width: 32px;
}

.theme-switch input {
  display:none;
}

.slider {
  background-color: #ccc;
  bottom: 0;
  cursor: pointer;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: .4s;
}

.slider:before {
  background-color: #fff;
  bottom: 2px;
  content: "";
  height: 8px;
  left: 2px;
  position: absolute;
  transition: .4s;
  width: 8px;
}

input:checked + .slider {
  background-color: #f140fa;
}

input:checked + .slider:before {
  transform: translateX(20px);
}

.slider.round {
  border-radius: 12px;
}

.slider.round:before {
  border-radius: 50%;
}


/* particle */
#particle-container {
  position: fixed;
  overflow: hidden;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  z-index: 0;
}