body {
  top: 0;
  background-color: rgb(0, 0, 0);
  margin-top: 0;
  margin-left: 0;
}

a {
  outline: none;
  -webkit-tap-highlight-color: transparent;
}

* {
  margin: 0;
  padding: 0;
}

* {
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;

  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
}

img {
  -webkit-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
}
a {
  text-decoration: none;
}

#header {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: black;
}

/* PC vesion */
@media (min-width: 800px) {
  #icon {
    width: 100%;
    box-shadow: 0 4px 15px rgba(255, 255, 255, 0.4),
      0 0 20px rgba(255, 255, 255, 0.2);
    display: flex;
    justify-content: center;
    align-items: center;
  }

  #main {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    width: 95.5%;
    background-color: rgb(0, 0, 0);
    padding-top: 7vh;
    padding-bottom: 7vh;
    padding-left: 2vw;
    padding-right: 2vw;
    row-gap: 35px;
    column-gap: 50px;
  }

  #familyTree {
    width: 100%;
    border: 5px solid white;
    border-radius: 25px;
    transition: transform 0.3s ease, box-shadow 0.3s ease,
      border-color 0.3s ease;
  }

  #familyTree:hover {
    box-shadow: 0 0 10px 2px white;
    border-color: white;
  }

  #learnReading {
    width: 100%;
    border: 5px solid white;
    border-radius: 25px;
    transition: transform 0.3s ease, box-shadow 0.3s ease,
      border-color 0.3s ease;
  }

  #learnReading:hover {
    box-shadow: 0 0 10px 2px white;
    border-color: white;
  }

  #ancientSnake {
    width: 100%;
    border: 5px solid white;
    border-radius: 25px;
    transition: transform 0.3s ease, box-shadow 0.3s ease,
      border-color 0.3s ease;
  }

  #guessThePrice {
    width: 100%;
    border: 5px solid white;
    border-radius: 25px;
    transition: transform 0.3s ease, box-shadow 0.3s ease,
      border-color 0.3s ease;
  }

  #guessThePrice:hover {
    box-shadow: 0 0 10px 2px white;
    border-color: white;
  }

  .TBD {
    width: 100%;
    border: 5px solid white;
    border-radius: 25px;
  }

  #otherProjects {
    width: 100%;
    border: 5px solid white;
    border-radius: 25px;
    transition: transform 0.3s ease, box-shadow 0.3s ease,
      border-color 0.3s ease;
  }

  /* #otherProjects:hover:not(.disable-hover) {
    box-shadow: 0 0 10px 2px white;
    border-color: white;
  }

  #otherProjectsOverlay {
    color: white;
    position: relative;
    background-color: rgb(0, 0, 0);
    margin-top: -72%;
    height: 85%;
    width: 95%;
    margin-left: 3.6%;
    display: none;
    flex-direction: column;
    overflow-y: auto;
    overflow-x: hidden;
    box-sizing: border-box;
    align-items: center;
  }

  #otherProjectsOverlay > * {
    width: 100%; 
    background-color: rgb(0, 0, 0);
    border-top: 1px solid white;
    padding-top: 1vw;
  }

  #otherProjectsOverlay > *:first-child {
    border-top: none;
  }

  #overlayMainTXT {
    font-size: 2.5vw;
    margin-top: -1vw;
    display: flex;
    justify-content: center;
  }

  .overlaySiteTXT {
    font-size: 2vw;
    font-family: inherit;
    display: flex;
    justify-content: left;
    padding-left: 1vw;
  } */

  .toFade {
    opacity: 1;
    transition: opacity 1s ease-out;
  }

  .faded {
    opacity: 0;
    pointer-events: none;
  }

  .trigger:active ~ .toFade {
    opacity: 0;
    transition: opacity 1.15s ease-out;
  }

  @keyframes raiseRight {
    0% {
      transform: rotate(0deg) translateX(0px);
    }

    65% {
      transform: rotate(5deg) translateX(-110px);
    }

    100% {
      transform: rotate(-10deg) translateX(370px);
    }
  }

  @keyframes pendulum {
    0% {
      transform: rotate(-10deg) translateX(370px);
    }
    50% {
      transform: rotate(10deg) translateX(-370px);
    }
    100% {
      transform: rotate(-10deg) translateX(370px);
    }
  }

  .raise {
    animation: raiseRight 1.5s ease-out forwards;
  }

  .swing {
    pointer-events: none;
    animation: pendulum 2.5s ease-in-out infinite;
  }

  #projects {
    display: grid;
    grid-template-columns: 50vw 50vw;
    grid-template-rows: 39vh 39vh;
    margin-top: 0.2vw;

    margin-top: 1.2vh;
  }
  .window {
    font-size: 5vw;
    color: white;
    background-color: black;
    width: 80vh;
    border: solid rgb(118, 118, 118);
    border-radius: 10px;
  }

  #iconSVG {
    width: 10vw;
    height: 10vw;
    margin-bottom: 0.8vw;
    margin-top: 0.8vw;
  }

  #icon {
    width: 100%;
    box-shadow: 0 2px 10px rgb(255, 255, 255), 0 0 15px rgb(255, 255, 255);
  }

  footer {
    height: 10vw;
    background-color: blackred;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #footerPC {
    height: 9.6vw;
    width: 97vw;
  }
}

/* Mobile vesion */
@media (max-width: 800px) {
  #icon {
    width: 100vw;
    height: 35vw;
    box-shadow: 0 2px 10px rgb(255, 255, 255), 0 0 15px rgb(255, 255, 255);
  }

  footer {
    overflow: hidden;
    height: 19.5vw;
    background-color: blackred;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #footerPC {
    display: none;
  }

  footer {
    display: none;
  }

  .toFade {
    opacity: 1;
    transition: opacity 1s ease-out;
  }

  .faded {
    opacity: 0;
    pointer-events: none;
  }

  .trigger:active ~ .toFade {
    opacity: 0;
    transition: opacity 1s ease-out;
  }

  #iconSVG {
    width: 30vw;
    height: 30vw;
    margin-left: 35vw;
    margin-bottom: 2.5vw;
    margin-top: 2.5vw;
  }

  @keyframes raiseRight {
    0% {
      transform: rotate(0deg) translateX(0px);
    }

    75% {
      transform: rotate(5deg) translateX(-90px);
    }

    100% {
      transform: rotate(-10deg) translateX(170px);
    }
  }

  @keyframes pendulum {
    0% {
      transform: rotate(-10deg) translateX(170px);
    }
    50% {
      transform: rotate(10deg) translateX(-170px);
    }
    100% {
      transform: rotate(-10deg) translateX(170px);
    }
  }

  .raise {
    animation: raiseRight 1.5s ease-out forwards;
  }

  .swing {
    pointer-events: none;
    animation: pendulum 2.5s ease-in-out infinite;
  }

  #main {
    display: grid;
    grid-template-columns: 100vw;
    grid-template-rows: 1fr 1fr 1fr 1fr 1fr 1fr;
    width: 100vw;
    background-color: black;
    padding-top: 4vh;
    padding-bottom: 2vh;
    gap: 3vh;
  }

  #window_1 {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #familyTree {
    width: 90%;
    border: 3px solid white;
    border-radius: 15px;
  }

  #window_2 {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #learnReading {
    width: 90%;
    border: 3px solid white;
    border-radius: 15px;
  }

  #window_3 {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #ancientSnake {
    width: 90%;
    border: 3px solid white;
    border-radius: 15px;
  }

  #window_4 {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #guessThePrice {
    width: 90%;
    border: 3px solid white;
    border-radius: 15px;
  }

  #otherProjects {
    width: 90%;
    border: 3px solid white;
    border-radius: 15px;
  }

  #otherProjectsOverlay {
    color: white;
    position: absolute;
    background-color: rgb(0, 0, 0);
    width: 85vw;
    height: 60vw;
    overflow: hidden;
    display: none;
    justify-content: center;
    pointer-events: none;
    z-index: 999;
    border-radius: 15px;
    overflow: hidden;
  }

  .overlayTXT {
    font-size: 8vw;
  }

  .TBD {
    width: 90%;
    border: 3px solid white;
    border-radius: 15px;
  }

  #window_5 {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #window_6 {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #window_7 {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #window_8 {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #window_9 {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
