@font-face {
  font-family: 'Signika';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/signika/v25/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r9gTuoyjkm.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Stalemate';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/stalemate/v20/taiIGmZ_EJq97-UfkZRZva6t.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/l/font?kit=TK3_WkUHHAIjg75cFRf3bXL8LICs1xZogURwby6gvxK0NRniZUFoWeWLBA&skey=653237e53512d0de&v=v49) format('woff2');
}

:root {
  --width: 40vw;
}

* {
  touch-action: manipulation;
}

html {
  font-family: "Signika", sans-serif !important;
  overflow-x: hidden !important;
}

body {
  background: #afa2e5;
  transition: 3s all;
  width: 100vw;
  overflow-x: hidden !important;
}

.a {
  background-color: #00c993;
}

.b {
  background-color: #4aadff;
}

.c {
  background-color: #9983FF;
}

.d {
  background-color: #00c993;
}

.container {
  padding-top: 0.67em;
  position: relative;
  display: block;
  height: auto;
  color: white;
  text-align: center;
  min-width: 24px;
}

.container #homelogo {
  font-size: 5em;
  margin: 0.67em 0;
}

#head {
  width: 100vw;
  height: 100vh;
  flex-direction: column;
  display: flex;
  align-items: center;
  justify-content: center;
}

.typing-wrapper {
  height: 1.5em;
  /*This part is important for centering*/
  display: grid;
  place-items: center;
}

.typing-demo {
  width: 19ch;
  animation: typing 2s steps(19), blink 0.5s step-end infinite alternate;
  overflow: hidden;
  border-right: 3px solid;
  white-space: nowrap;
  font-family: monospace;
  font-size: 1.5em;
  font-weight: bold;
}

@keyframes typing {
  from {
    width: 0;
  }
}

@keyframes blink {
  50% {
    border-color: transparent;
  }
}

#intro1 {
  line-height: 1.35em;
  margin-top: 1.75em;
}

#intro2 {
  line-height: 1.35em;
  margin-top: 0.6em;
}

#canvas_wrap {
  margin-top: 25px;
  height: 235px;
  width: 100vw;
  transform: scale(0.5);
  transform-origin: 0% 0% 0px;
}

#canvas {
  touch-action: auto;
  height: 200%;
  width: 200%;
}

a {
  color: white;
}

.button {
  background: #ddd7d1;
  text-align: center;
  padding: 0.5em 1em;
  color: white;
  font-weight: bold;
  text-decoration: none;
  box-shadow: 0 0.2em 0 #bcb1a5;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  /*transition cross-browser stuff*/
  -webkit-transition: background 0.2s ease-out;
  /* Safari 3.2+, Chrome */
  -moz-transition: background 0.2s ease-out;
  /* Firefox 4-15 */
  -o-transition: background 0.2s ease-out;
  /* Opera 10.5â€“12.00 */
  transition: background 0.2s ease-out;
  /* Firefox 16+, Opera 12.50+ */
}

.button:hover {
  background: #bcb1a5;
}

a.arrow {
  color: white;
  text-align: center;
  font-size: 3em;
  text-decoration: none;
  padding-bottom: 30px;
  /*transition cross-browser stuff*/
  -webkit-transition: color 0.2s ease-out;
  /* Safari 3.2+, Chrome */
  -moz-transition: color 0.2s ease-out;
  /* Firefox 4-15 */
  -o-transition: color 0.2s ease-out;
  /* Opera 10.5â€“12.00 */
  transition: color 0.2s ease-out;
  /* Firefox 16+, Opera 12.50+ */
}

a.arrow:hover {
  color: #ffc52f;
}

.section {
  position: relative;
  display: flex;
  width: 100vw;
  color: white;
  text-align: left;
  height: 100vh;
}

#sect1 {
  align-items: center;
  justify-content: space-evenly;
}

#question {
  float: left;
  width: 20%;
  font-size: 5em;
  display: flex;
  align-items: center;
  justify-content: center;
}

.explanation {
  min-width: 12.42em;
  float: right;
  width: 40%;
  margin: 3%;
}


#sect2 {
  align-items: center;
  flex-direction: row;
  top: auto;
  justify-content: space-evenly;
}

#anchorbook {
  display: none;
}


.wrapper {
  align-items: center;
  display: flex;
  height: 90%;
  justify-content: center;
  width: var(--width);
  overflow: hidden;
  filter: drop-shadow(15px 5px 5px #494338);
  margin: 5% 2% 5% 2%;
  float: left;
}

.aspect {
  padding-bottom: 100%;
  position: relative;
  width: 100%;
}

.aspect-inner {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.flipbook {
  height: calc(var(--width) / 2 / 0.6899224);
  transition: margin-left 0.2s ease-out;
  -webkit-transition: margin-left 0.2s ease-in-out;
  -moz-transition: margin-left 0.2s ease-in-out;
  -o-transition: margin-left 0.2s ease-in-out;
  -ms-transition: margin-left 0.2s ease-in-out;
  width: 100%;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  margin: 10% auto;
}

.flipbook .p1 {
  background-image: url("https://cdn.jsdelivr.net/gh/idunwannagotoschool/resources@master/bookcover.webp") !important;
  background-size: 100%;
  width: 100%;
}



.flipbook .p2 {
  background-image: url("https://cdn.jsdelivr.net/gh/idunwannagotoschool/resources@master/bookinnerleft.webp") !important;
  background-size: 100%;
  height: 100%;
  width: 100%;
}

.flipbook .p27 {
  background-image: url("https://cdn.jsdelivr.net/gh/idunwannagotoschool/resources@master/bookinnerright.webp") !important;
  background-size: 100%;
  height: 100%;
  width: 100%;
}

.flipbook .p28 {
  background-image: url("https://cdn.jsdelivr.net/gh/idunwannagotoschool/resources@master/bookback.webp") !important;
  background-size: 100%;
  height: 100%;
  width: 100%;
}

.flipbook .pageback {
  background-image: url("https://cdn.jsdelivr.net/gh/idunwannagotoschool/resources@master/pageback.webp");
  background-size: 100% 100%;
  height: 100%;
}

.pagecontent {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  display: table;
  padding: 0%;
}

.flipbook .p3 .pagebac {
  background: linear-gradient(rgba(255, 255, 255, 0.1),
      rgba(255, 255, 255, 0.1)),
    url("./assets/pagebac.png");
  background-size: cover;
  opacity: 0.2;
}

.page .textcontent {
  padding: 10%;
  text-align: center;
  display: table-cell;
  vertical-align: middle;
}

.page h2 {
  font-family: "Stalemate", cursive;
  color: black;
  font-size: calc(var(--width) / 9);
}

.page p,
.page .pi {
  font-family: "Stalemate", cursive;
  color: black;
  font-size: calc(var(--width) * 7 / 90);
}

.mobile {
  display: none;
}

#sect3 {
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.clockwrap {
  text-align: center;
  flex: 1;
  display: flex;
  align-items: center;
}

.clockwrap h1 {
  text-align: center;
  color: #3d3d3d;
  font-family: "Oswald", Copperplate, Papyrus, fantasy;
  font-weight: 700;
  font-size: 5em;
  white-space: nowrap;
  margin: 0;
  border-top: 0.1em solid;
  border-bottom: 0.1em solid;
}

#footer {
  background: #ddd7d1;
  color: black;
  position: relative;
  height: 50px;
  text-align: center;
  justify-content: center;
  margin-bottom: 0;
}

.mastodon:link,
.mastodon:visited {
  color: black;
  text-decoration: underline;
}

.mastodon:hover {
  color: black;
  text-decoration: none;
}

@media only screen and (max-width: 767px) {
  body {
    font-size: 1.125em;
    /* 18px / 16px */
  }

  .container {
    background-size: 100%;
  }

  .container #homelogo {
    font-size: 3.25em;
    /*52 / 16*/
  }

  a.button {
    padding: 0.75em 1.5em;
  }

  .clockwrap h1 {
    font-size: 4em !important;
  }
}

@media only screen and (max-width: 550px) {
  :root {
    --width: 90vw !important;
  }

  #anchor1,
  #anchor2 {
    height: 1px;
    position: relative;
    visibility: hidden;
  }

  #sect1 {
    flex-direction: column;
  }

  .explanation {
    float: none;
    text-align: center;
  }

  #sect2 {
    height: 200vh;
    flex-direction: column-reverse;
  }

  #sect2 h2 {
    padding-top: 10%;
  }

  #sect2 .explanation {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .flexwrap {
    display: flex;
    align-items: center;
    flex-direction: column;
    height: 100vh;
    flex: 1;
  }

  #anchorbook {
    display: block;
    height: 100vh;
    flex: 0;
  }

  .wrapper {
    flex: 4;
  }

  .mobile {
    display: inline;
  }

  .desktop {
    display: none;
  }

  .mobileanchor {
    flex: 1.25;
  }

  .clockwrap h1 {
    font-size: 3em !important;
  }
}