@font-face {
  font-family: 'forestry';
  src: url(fonts/Forestry.ttf);
}

@font-face {
  font-family: 'highsummit';
  src: url(/fonts/HighSummit.ttf);
}

@font-face {
  font-family: 'jeff';
  src: url(/fonts/QEJeffDungan.ttf);
}

@font-face {
  font-family: 'witchwood';
  src: url('/fonts/Witchwoode-Regular.ttf');
}

/*
--carbon-black: #19191Aff;
--dark-khaki: #3E3A28ff;
--soft-linen: #ECEDE6ff;
--evergreen: #1B3528ff;
--deep-walnut: #463721ff;
--medium-evergreen: #6c7d74;
--light-evergreen: #a3aea9;*/

:root {
    --title-color: #a3aea9;
    --title-border: #6c7d74;
    --title-font-size: 4.5em;
    --title-font: 'forestry'; 
    --body-font: 'jeff'; 
    --body-font-color: #20550f;
    --box-color: #effae7ee;
    --left-image: url('/images/creepy-eyes.gif'); 
    --right-image: url('/images/creepytree.png'); 
    --divider-image: url('/images/twig.png');
    --background-image: url(images/darkwoods.jpg);
  }


  body, html {
    width: 100%;
    height: 100%;
    margin: 0px;
    padding: 0px;
    overflow-x: hidden;
        background-image: url(images/darkwoods.jpg);
background-color: #19191Aff;
  background-size: cover;
  }
  
  *, *::before, *::after {
      box-sizing: border-box;
  }
  
  body {
    background: var(--bg-image) top / cover no-repeat;
    text-align: justify;
    font: 1em var(--body-font);
    color: var(--body-font-color);
    scrollbar-color: var(--title-color) var(--box-color); /* Mozilla scrollbar fallback */
  }
  
      


p {
  font-size: 1em;
  font-family:'jeff';
  text-align: justify;
  line-height: 1.8em;
  padding: 0.2em;
}

    h2 {
  position: relative;
  font-family:'witchwood';
  font-size:1em;
  line-height:35px;
  font-weight:normal;
  letter-spacing:0.2em;
  text-align:center;

            }

    h3 {
  position: relative;
  font-size:1.5em;
  line-height:2em;
  font-weight:normal;
  letter-spacing:0.5em;
  text-align:right;

            }
a:link {
  color: antiquewhite;
    text-decoration: none;
}

a:visited {
  color: antiquewhite;
    text-decoration: none;
}
a:hover {
  color: red;
}
/*flashlight effect*/

#flashlight {
  --Xpos: 50vw;
  --Ypos: 50vh;
}
#flashlight:before {
  content: "";
   z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
    overflow: hidden;
  pointer-events: none;
  background: radial-gradient(
    circle 15em at var(--Xpos) var(--Ypos),
    rgba(0, 0, 0, 0),
    rgba(0, 0, 0, 0.95)
  );
}


/*layout*/


  .container {
    width: 100%;
    padding: 15px;
    margin: 10px;
    display: flex;
    align-items: stretch;
    flex-wrap: nowrap;
    justify-content: center;
  }
    
  #left {
    width: 10%;
    z-index: 5;
    background: var(--left-image) center / contain no-repeat;
    mix-blend-mode: lighten;
    opacity: 0.2;
  }

  #right {
    width: 10%;
    z-index: 5;
    background-image: url(images/creepytree.png);
    background-size: cover;
    opacity: 0.5;
      background-repeat: no-repeat;
  background-position-x: left;
  }
  
  #main {
  margin: auto;
  width: 50%;
  padding: 10px;
    z-index: 5;
      height:100%;
  }

  #bg {
position: absolute;
top: 0px;
left: 0px;
  width: 100%;
      height: 100%;
    z-index: 0;
      overflow: hidden;
  }

  
  #divider {
    height: 3.5em;
    max-width: 100%;
    margin: 1em;
    background: var(--divider-image) center / contain no-repeat;
      opacity: 0.5;
   }
  
  #title {
    font-family: 'forestry';
    color: var(--title-color);
    font-size: var(--title-font-size);
    text-align: center;
    letter-spacing: 7px;
  }
  
  #title a {
    text-decoration: none;
    color: inherit;
  }
  
  #title a:hover {
    filter: drop-shadow(2px 2px 5px var(--title-border));
  }
  
#subtitle {
    font-family: 'highsummit';
    color: #6c7d74;
    font-size: 1.5em;
    text-align: center;
    letter-spacing: 7px;
  }

  #subtitle a {
    text-decoration: none;
    color: inherit;
  }
  
  #subtitle a:hover {
    filter: drop-shadow(2px 2px 5px var(--title-border));
    text-shadow: 0.05em 0 black, 0 0.05em black, -0.05em 0 black, 0 -0.05em black, -0.05em -0.05em black, -0.05em 0.05em black, 0.05em -0.05em black, 0.05em 0.05em black;
  }
  
  /*book*/
.bookcontainer {
  width:100%;
    margin: auto;
  height: 500px;
  display: flex;
    z-index: 1;
}

.book {
  width: 150px;
  height: 220px;
  position:relative;
  text-align: center;
  margin-left:auto;
    margin-right:auto;
}

.book-cover {
  position: absolute;
  z-index:2;
  width: 100%;
  height: 100%;
  transform-origin: 0 50%;
  -webkit-transform-origin: 0 50%;
  background: #111;
  background-size:cover;
  border-radius: 3px;
  box-shadow: 
    inset 4px 1px 3px #ffffff60,
    inset 0 -1px 2px #00000080;
  transition: all .5s ease-in-out;
  -webkit-transition: all .5s ease-in-out;
}

.cover1 {
  background: url('images/journal.png');
}

.book .book-cover {
  background-size: 100% 100%;
}

.effect {
  width: 20px;
  height: 100%;
  margin-left: 10px;
  border-left: 2px solid #00000010;
  background-image: linear-gradient(90deg, rgba(255,255,255,0.2) 0%, rgba(255,255,255,0) 100%);
  transition: all .5s ease;
}

.light {
  width: 90%;
  height: 100%;
  position: absolute;
  border-radius: 3px; 
  background-image: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.2) 100%);
  top: 0;
  right:0;
  opacity: .1;
  transition: all .5s ease;
  -webkit-transition: all .5s ease;
}

.book:hover { cursor:pointer; }

.book:hover .book-cover {
  transform: perspective(2000px) rotateY(-30deg);
  -webkit-transform: perspective(2000px) rotateY(-30deg);
  transform-style: preserve-3d;
  -webkit-transform-style: preserve-3d;
  box-shadow: 
    inset 4px 1px 3px #ffffff60,
    inset 0 -1px 2px #00000080,
    10px 0px 10px -5px #00000030
}

.book:hover .effect {
  width: 40px;
}

.book:hover .light {
  opacity: 1;
  width: 70%;
}

.book-inside{
  width: calc(100% - 2px);
  height:96%;
  position:relative;
  top: 2%;
  border: 1px solid grey;
  border-radius:3px;
  background: white;
  box-shadow: 
  10px 40px 40px -10px #00000030,
  inset -2px 0 0 grey,
  inset -3px 0 0 #dbdbdb,
  inset -4px 0 0 PaleGoldenrod,
  inset -5px 0 0 #dbdbdb,
  inset -6px 0 0 DarkKhaki,
  inset -7px 0 0 #dbdbdb,
  inset -8px 0 0 Khaki,
  inset -9px 0 0 #dbdbdb;
}


.btn {
  position:relative;
  background: #aaa;
  color: #fff;
  font-weight: bold;
  padding: 15px 30px;
  font-size: 16px;
  letter-spacing:1px;
  border-radius: 50px;
  bottom: -50px;
  display: inline-block;
  opacity: 0;
  transition: all 1s ease-in-out;
  -webkit-transition: all 1s ease-in-out;
}

.book:hover .btn, .book:hover .title {
  opacity: 1;
}

.text {
  column-count: 3;
  column-gap: 3rem;
  column-fill: balance;

  font-family: serif;
  font-size: 1.1rem;
  line-height: 1.6;

  /* subtle distortion */
  transform: skewX(-1deg);
}

.text p {
  margin-bottom: calc(1rem + 1vw);
}

.text p:nth-child(odd) {
  letter-spacing: 0.06em;
    }



@keyframes wobble {
  0% { transform: rotate(0deg); }
  25% { transform: rotate(-2deg); }
  50% { transform: rotate(2deg); }
  75% { transform: rotate(-1deg); }
  100% { transform: rotate(0deg); }
}

.wobble {
  color: #a3aea9;
  font-size: 2em;
  display: inline-block;
  width: 50%;
  height: 200px;
  padding: 20px;
  margin-left: 25%;
    margin-right: 25%;
  -moz-border-radius: 100px;
  -webkit-border-radius: 100px;
  border-radius: 50%;
  animation:wobble 5s ease-in-out infinite alternate;
  transform-origin: center bottom;
  transition: padding .3s, bottom .3s;
    transform: skewX(-5deg);
    text-shadow: 2px 2px #000000;
    letter-spacing: 1px;
}


  /* Mobile */

@media screen and (max-width: 600px) {
  #left {
   display: none;
  }

    #flaslight {
        display: none;}
        
    #flashlight:before {
        display: none;
    }
  #right {
   display: none;
  }
.wobble {
  width: 80%;
  height: 200px;
  padding: 20px;
margin: 50px;
    overflow:visible;
    }
.wobble2 {
     width: 80%;
  height: 200px;
  padding: 20px;
margin: 50px;
    overflow:visible;
}
    
      #divider {
    height: 3.5em;
    max-width: 100%;
    margin: 1em;
    background: var(--divider-image) center / contain no-repeat;
      opacity: 0.5;
   }