* {
  padding: 0;
  margin: 0;
  border: 0;
}

*,
*:before,
*:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

:focus,
:active {
  outline: none;
}

a:focus,
a:active {
  outline: none;
}

nav,
footer,
header,
aside {
  display: block;
}

html,
body {
  height: 100vh;
  width: 100vw;
  font-size: 100%;
  line-height: 1;
  font-size: 14px;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

input,
button,
textarea {
  font-family: inherit;
}

body {
  overflow-x: hidden;
}

input::-ms-clear {
  display: none;
}

button {
  cursor: pointer;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

a,
a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

ul li {
  list-style: none;
}

img {
  vertical-align: top;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: 400;
}

li {
  list-style-type: none;
}

@font-face {
  font-family: Rregular;
  src: url(fonts/Raleway/Raleway-Medium.ttf);
}

@font-face {
  font-family: Rbold;
  src: url(fonts/Raleway/Raleway-Bold.ttf);
}

@font-face {
  font-family: roboto;
  src: url(fonts/Roboto/Roboto-Medium.ttf);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

::selection {
  background: #1f925b;
  color: #fff;
}

body {
  font-family: Rregular;
  letter-spacing: 2px;
}

body._lock {
  overflow: hidden;
}

/*-----------------------------------------------------------------------------------------*/
.preloader-container {
  position: fixed;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
  width: 100vw;
  top: 0;
  left: 0;
  transition: 0.2s;
  z-index: 10000;
}

body.loaded_hiding .preloader-container {
  opacity: 0;
}

body.loaded .preloader-container {
  display: none;
}

body._dark-mode .preloader {
  background-color: #121212;
}

body._dark-mode .preloader{
  --_g: no-repeat radial-gradient(farthest-side, #A6E011 94%, #0000);
}

/* HTML: <div class="loader"></div> */
.preloader {
  width: 35px;
  aspect-ratio: 1;
  --_g: no-repeat radial-gradient(farthest-side, #1F925B 94%, #0000);
  background:
    var(--_g) 0 0,
    var(--_g) 100% 0,
    var(--_g) 100% 100%,
    var(--_g) 0 100%;
  background-size: 40% 40%;
  animation: l38 .5s infinite;
}

@keyframes l38 {
  100% {
    background-position: 100% 0, 100% 100%, 0 100%, 0 0
  }
}



/* SCROLLBAR ---------*/
@media (min-width: 1201px){
  ::-webkit-scrollbar {
      position: relative;
      width: 12px;
      height: 12px;
      background-color: #fff;
      z-index: 110;
    }
  
    ::-webkit-scrollbar-track {
      position: relative;
      background: rgba(0, 0, 0, 0.1);
      z-index: 110;
    }
  
    ::-webkit-scrollbar-thumb {
      position: relative;
      background: rgb(181, 233, 47);
      background: linear-gradient(0deg, rgba(181, 233, 47, 1) 0%, rgba(31, 146, 91, 1) 100%);
      z-index: 110;
    }
}


/* HTML: <div class="loader"></div> */
.loader {
  height: 15px;
  aspect-ratio: 5;
  --_g: no-repeat radial-gradient(farthest-side, #000 94%, #0000);
  background: var(--_g), var(--_g), var(--_g), var(--_g);
  background-size: 20% 100%;
  animation:
    l40-1 .75s infinite alternate,
    l40-2 1.5s infinite alternate;
}

@keyframes l40-1 {

  0%,
  10% {
    background-position: 0 0, 0 0, 0 0, 0 0
  }

  33% {
    background-position: 0 0, calc(100%/3) 0, calc(100%/3) 0, calc(100%/3) 0
  }

  66% {
    background-position: 0 0, calc(100%/3) 0, calc(2*100%/3) 0, calc(2*100%/3) 0
  }

  90%,
  100% {
    background-position: 0 0, calc(100%/3) 0, calc(2*100%/3) 0, 100% 0
  }
}

@keyframes l40-2 {

  0%,
  49.99% {
    transform: scale(1)
  }

  50%,
  100% {
    transform: scale(-1)
  }
}


