* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    width: 100vw;
    height: 100vh;
    font-family: "Bebas Neue", sans-serif;
    overflow: hidden;
}

.favicon {
    border-radius: 50%;
}


  .pre-loader {
    position: fixed;
    top: 0;
    width: 100%;
    height: 100%;
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
  }
  
  .loader {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background: #000;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .loader-content {
    width: 100% !important;
    min-height: 100vh;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
    color: #fff;
  }

  .loader-text {
    font-size: 5em;
  }

  .count {
    text-align: right;
    line-height: 1;
    padding: 0 1em;
    font-family: "Bebas Neue", sans-serif;
  }

  .copy {
    font-family: "Rubik Glitch", system-ui;
    font-size: 1.563em;
    text-transform: uppercase;
    line-height: 1;
  }

  .ml16 {
    overflow: hidden;
  }

  .ml16 .letter {
    display: inline-block;
    line-height: 1em;
    font-size: 2em;
  }

  .loader-bg {
    position: absolute;
    display: block;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: pink;
    z-index: -1;
  }

  .loader-2 {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    z-index: -1;
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
  }

  .site-content {
    position: relative;
    height: 100vh;
    width: 100vw;
    z-index: -2;
  }

  /* NAV */

  .kaneki {
    width: 2.5em;
    height: 2.5em;
    border-radius: 50%;
  }

  nav {
    width: 100%;
    padding: 2em;
    display: flex;
    z-index: -2 !important;
  }

  a {
    text-decoration: none;
    color: #000;
    cursor: pointer;
  }

  a:hover  {
    color: pink !important;
  }
  
  i:hover {
    color: pink !important;
  }

  a:hover ~ .cursor {
    color: pink;
    cursor: pointer;
    transform: scale(6);
  }

  nav > div {
    flex: 1;
    font-size: 1.5em;
  }

  .links {
    display: flex;
    justify-content: flex-end;
    gap: 5em;
  }

    /* NAV */

  .header {
    display: flex;
    padding: 1em;
  }

  .header h1 {
    flex: 1;
    position: relative;
    font-size: 19vw;
    font-family: "Rubik Glitch", system-ui;
    font-weight: 500;
    text-transform: uppercase;
    line-height: 1;
    text-align: center;
    justify-content: center;
    align-items: center;
  }

  footer {
    position: fixed;
    bottom: 0;
    width: 100%;
    display: flex;
    align-items: flex-end;
    padding: 2em;
  }

  footer > div {
    flex: 1;
  }

  .footer-copy p {
    width: 50%;
  }

  b {
    font-family: "Rubik Glitch", system-ui;
  }

  .footer-nav {
    display: flex;
    gap: 1.5em;
    justify-content: flex-end;
  }

  .img {
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    width: 15.625em;
    height: 21.875em;
    padding-right: 1.5em;
  }

  .img:nth-child(1) {
    width: 15.625em;
    height: 21.875em;
    background-size: cover;
  }

  .img:nth-child(2) {
    width: 15.625em;
    height: 21.875em;
    background-size: cover;
  }


  /* MEDIA QUERIES */

  @media screen and (min-width: 901px) {

    .loader-2-mobile {
      display: none;
    }

  }

  @media screen and (max-width: 900px) {

    html, body {
      width: 100vw;
      height: 100vh;
      font-family: "Bebas Neue", sans-serif;
      overflow: hidden;
  }

  .loader {
    height: 100dvh;
    width: 100vw;
  }

    .header {
      padding-top: 10rem;
    }

    footer {
        flex-direction: column;
        gap: 2em;
    }

    .footer-copy p {
        width: 100%;
    }

    .footer-nav {
        width: 100%;
        justify-content: space-between;
    }

    nav {
        display: flex;
        flex-direction: column;
    }
    
    .img {
      clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
      width: 10em;
      height: 12em;
      padding-right: 1.5em;
    }
  
    .img:nth-child(1) {
      width: 10em;
      height: 12em;
      background-size: cover;
    }
  
    .img:nth-child(2) {
      width: 10em;
      height: 12em;
      background-size: cover;
    }

    /* LOADER */

    .loader-2 {
      display: none;
    }

    .loader-2-mobile {
      position: absolute;
      top: 0;
      width: 100%;
      height: 100%;
      background-size: cover;
      z-index: -1;
      clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    }

  .loader-content {
    width: 100% !important;
    min-height: 100vh;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
    color: #fff;
  }

  .loader-text {
    font-size: 5em;
  }

  .count {
    text-align: right;
    line-height: 1;
    padding: 0 1em;
    font-family: "Bebas Neue", sans-serif;
  }

  .copy {
    font-family: "Rubik Glitch", system-ui;
    font-size: 1em;
    text-transform: uppercase;
    line-height: 1;
  }

    /* LOADER END */

    /* MOBILE NAV */

  .logo {
    width: 1em;
    height: 1em;
    border-radius: 50%;
    position: absolute;
    left: 5%; 
    top: 2%;
  }

   .kaneki {
    width: 1.5em;
    height: 1.5em;
    border-radius: 50%;
  }
    
    nav {
      width: 100%;
      padding: 2em;
      display: flex;
      z-index: -2 !important;
      flex-direction: column; 
      align-items: flex-end; 
      right: 0; 
      top: 0; 
    }
    
    a {
      text-decoration: none;
      color: #000;
      cursor: pointer;
    }
    
    a:hover {
      color: #fff !important;
    }
    
    i:hover {
      color: #fff !important;
    }
    
    a:hover ~ .cursor {
      color: #fff;
      cursor: pointer;
      transform: scale(6);
    }
    
    nav > div {
      font-size: 1.5em;
    }
    
    .links {
      display: flex;
      flex-direction: column;
      gap: 1em;
    }

    .primary-navigation {
      position: fixed;
      top: 0;
      right: 0;
      height: 100vh;
      width: 40%;
      background: pink;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      align-items: flex-start;
      padding: min(3rem) 2rem;
      z-index: 1000;
      transform: translateX(100%);
      transition: transform 350ms ease-out;
  }

  .primary-navigation[data-visible="true"] {
      transform: translateX(0%);
      color: #000;
  }

  .primary-navigation a {
      color: #000;
  }

  .menu-btn {
      position: absolute;
      right: 2%; 
      top: 2%;
      z-index: 9999;
      padding-right: 20px;
      display: flex;
      justify-content: center;
      align-items: center;
      width: 40px;
      height: 40px;
      cursor: pointer;
      transition: all .5s ease-in-out;
  }

  .menu-btn_burger {
      width: 25px;
      height: 3px;
      background:#000;
      border-radius: 2.5px;
      transition: all .5s ease-in-out;
  }

  .menu-btn_burger::before,
  .menu-btn_burger::after {
      content: '';
      position: absolute;
      width: 25px;
      height: 3px;
      background:#000;
      border-radius: 2.5px;
      transition: all .5s ease-in-out;
  }

  .menu-btn_burger::before {
      transform: translateY(-8px);
  }

  .menu-btn_burger::after {
      transform: translateY(8px);
  }

  /* ANIMATION */
  .menu-btn.open .menu-btn_burger {
      transform: translateX(-50px);
      background: transparent;
      box-shadow: none;
  }

  .menu-btn.open .menu-btn_burger::before {
      transform: rotate(45deg) translate(35px, -35px);
  }

  .menu-btn.open .menu-btn_burger::after {
      transform: rotate(-45deg) translate(35px, 35px);
  }
    
    
  }