:root {
    --hColor: #9cc7fd;
    --BG1: #050a16;
    --BG2: #060b18;
    --boxBG: #111824;
    --primary-blue: #4b6cb7;
    --primary-yellow: #eac23a;
    --primary-red: #db6274;
}
* {
    cursor: none !important;
}
html {
    overflow-x: hidden !important;
}
.pageContainer {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}
.mainContent {
    flex: 1;
}
body {
    margin: 0;
    padding: 0;
    font-family: 'TTWellingtons-Regular';
    color: white;
    background-color: var(--boxBG);
    overflow-x: hidden !important;
    cursor: none !important;
}
/* CURSOR */
.cursor {
    width: 16px;
    height: 16px;
    position: fixed;
    top: 0;
    left: 0;
    transform: translate(-50%, -50%);
    pointer-events: none;
    z-index: 9999;
    cursor: none;
}
.cursor::before {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background-color: #00ffea;
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0.9;
    z-index: 2;
}
.cursor::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(39, 185, 173, 0.4);
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(1);
    transition: transform 0.3s ease, opacity 0.3s ease;
    z-index: 1;
}
.cursor.active::after {
    transform: translate(-50%, -50%) scale(2); /* DOUBLE the size */
    opacity: 0.6;
}
@media screen and (max-width: 420px) {
    .cursor {
       display: none;
    }
}
/* Hide .cursor on touch-enabled devices */
@media (hover: none) and (pointer: coarse) {
    .cursor {
        display: none;
    }
}
/* /CURSOR */


/* FONTS */
/* AKIRA */
@font-face {
    font-family: 'Akira';
    src: url('../fonts/AkiraExpandedDemo.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'TTWellingtons-Regular';
    src: url('../fonts/TTWellingtons/TTWellingtons-Regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}
/* Oswald */
.konkhmer-sleokchher-regular {
    font-family: "Konkhmer Sleokchher";
    font-weight: 400;
    font-style: normal;
}
/* quicksand */
.quicksand-regular {
    font-family: "Quicksand";
    font-optical-sizing: auto;
    font-style: normal;
}
/* montserrat */
.montserrat-regular {
    font-family: "Montserrat";
    font-optical-sizing: auto;
    font-style: normal;
}
/* roboto */
.roboto {
    font-family: "Roboto";
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-variation-settings: "wdth" 100;
}
/* roboto-slab  */
.roboto-slab {
    font-family: "Roboto Slab", serif;
    font-optical-sizing: auto;
    font-style: normal;
}
/* /FONTS */


/* SCROLLBAR */
::-webkit-scrollbar {
    background: var(--boxBG);
    border-radius: 10px;
    width: 8px;
}

::-webkit-scrollbar-thumb {
    background-color: var(--hColor);
    border-radius: 10px;
}
/* /SCROLLBAR */

/* COLOR BAR */
.color-bar {
    display: flex;
    width: 100%;
    height: 10px;
}
.bar {
    height: 100%;
    width: 33.33%;
}
.blue {
    background-color: var(--primary-blue);
    box-shadow: 0px 0px 6px 3px rgba(131, 153, 200, 0.4);
}
.yellow {
    background-color: var(--primary-yellow);
    box-shadow: 0px 0px 6px 3px rgba(234, 194, 58, 0.4);
}
.red {
    background-color: var(--primary-red);
    box-shadow: 0px 0px 6px 3px rgba(219, 98, 116, 0.4);
}
/* /COLOR BAR */

@supports (-webkit-touch-callout: none) {
    body {
        background-attachment: scroll;
    }
}


@-webkit-keyframes tilt-in-top-1 {
    0% {
      -webkit-transform: rotateY(30deg) translateY(-300px) skewY(-30deg);
              transform: rotateY(30deg) translateY(-300px) skewY(-30deg);
      opacity: 0;
    }
    100% {
      -webkit-transform: rotateY(0deg) translateY(0) skewY(0deg);
              transform: rotateY(0deg) translateY(0) skewY(0deg);
      opacity: 1;
    }
  }
  @keyframes tilt-in-top-1 {
    0% {
      -webkit-transform: rotateY(30deg) translateY(-300px) skewY(-30deg);
              transform: rotateY(30deg) translateY(-300px) skewY(-30deg);
      opacity: 0;
    }
    100% {
      -webkit-transform: rotateY(0deg) translateY(0) skewY(0deg);
              transform: rotateY(0deg) translateY(0) skewY(0deg);
      opacity: 1;
    }
  }


  @-webkit-keyframes text-pop-up-top {
    0% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
      -webkit-transform-origin: 50% 50%;
              transform-origin: 50% 50%;
      text-shadow: none;
    }
    100% {
      -webkit-transform: translateY(-50px);
              transform: translateY(-50px);
      -webkit-transform-origin: 50% 50%;
              transform-origin: 50% 50%;
      text-shadow: 0 1px 0 #cccccc, 0 2px 0 #cccccc, 0 3px 0 #cccccc, 0 4px 0 #cccccc, 0 5px 0 #cccccc, 0 6px 0 #cccccc, 0 7px 0 #cccccc, 0 8px 0 #cccccc, 0 9px 0 #cccccc, 0 50px 30px rgba(0, 0, 0, 0.3);
    }
  }
  @keyframes text-pop-up-top {
    0% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
      -webkit-transform-origin: 50% 50%;
              transform-origin: 50% 50%;
      text-shadow: none;
    }
    100% {
      -webkit-transform: translateY(-50px);
              transform: translateY(-50px);
      -webkit-transform-origin: 50% 50%;
              transform-origin: 50% 50%;
      text-shadow: 0 1px 0 #cccccc, 0 2px 0 #cccccc, 0 3px 0 #cccccc, 0 4px 0 #cccccc, 0 5px 0 #cccccc, 0 6px 0 #cccccc, 0 7px 0 #cccccc, 0 8px 0 #cccccc, 0 9px 0 #cccccc, 0 50px 30px rgba(0, 0, 0, 0.3);
    }
  }