@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@500&display=swap');

html {
  scroll-behavior: smooth;
}

::-webkit-scrollbar {
  width: 0px;
}

* {
  margin: 0;
  padding: 0;
  font-family: 'Segoe UI', 'M PLUS 1p', Arial, sans-serif;
}

body {
  counter-reset: row;
}

header {
  width: 100%;
  height: 100%;
  position: absolute;
  background-color: black;
  z-index: 3;
}

header h1 {
  position: relative;
  font-size: 8vh;
  color: white;
  font-weight: bold;
  top: 10%;
  width: 100%;
  text-align: center;
}

header img {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  height: 20vh;
  top: 15%;
  border-radius: 9999px;
}

header p {
  position: relative;
  color: white;
  width: 100%;
  font-size: 3.5vh;
  font-weight: 600;
  text-align: center;
  top: 20%;
}

header a {
  position: absolute;
  bottom: 0.25vh;
  width: 100%;
  color: white;
  font-size: 2.5vh;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
}

header a:hover span {
  text-decoration: underline;
}

p {
  font-size: 200%;
}

a {
  font-size: 200%;
}

#stuff {
  top: 100%;
  position: absolute;
  background-color: #b782cf;
  min-height: 100%;
  width: 100%;
}

.presenting {
  user-drag: none;
  -webkit-user-drag: none;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  align-self: end;
  position: relative;
  display: block;
  height: 80vh;
  padding-bottom: 2vh;
  grid-area: 1 / 1 / span 5 / 1;
}

.container {
  display: grid;
  position: relative;
  grid-template-columns: max-content max-content auto;
  grid-template-rows: auto auto auto auto auto;
}

.container a.socials {
  align-self: center;
  padding-left: 2vw;
  grid-column: 2;
}

.container a.socials:hover {
  animation: bounce 0.25s ease-in-out 1;
}

@keyframes bounce {
  0%,
  100% {
    scale: 1;
  }

  50% {
    scale: 0.8;
  }
}

.container a.socials img {
  height: 15vmin;
  display: block;
}

.container a.text {
  align-self: center;
  padding-left: 3vw;
  grid-column: 3;
  color: white;
  font-size: 3vh;
  font-weight: 600;
  text-align: left;
  text-decoration: none;
}

.showM {
  display: none;
}

@media only screen and (max-aspect-ratio: 182/307) {
  .hideS {
    display: none;
  }

  header p {
    font-size: 3vh;
  }

  .container a.socials img {
    height: 22.5vmin;
  }
}

@media only screen and (max-aspect-ratio: 513/614) {
  .container a.text {
    font-size: 2.75vh;
  }
}

@media only screen and (max-aspect-ratio: 246/307) {
  .container a.text {
    font-size: 2.5vh;
  }
}

@media only screen and (max-aspect-ratio: 675/614) {
  .presenting {
    align-self: end;
    width: 35vh;
    height: auto;
  }
}

@media only screen and (max-aspect-ratio: 236/307) {
  .presenting {
    align-self: end;
    width: 25vh;
    bottom: 10vh;
    height: auto;
  }
}

@media only screen and (max-aspect-ratio: 410/307) {
  .showM {
    display: initial;
  }

  .hideM {
    display: none;
  }
}
