@font-face {
  font-family: 'ForestCursed';
  src: url('sumber/ReenieBeanie.ttf') format('truetype');
}

body{
    color:white;
    font-family:'ForestCursed', serif;
    background-image:url(lm_background.jpg);
    background-repeat: no-repeat;
    background-size:100%;
    background-color: black;
    margin-bottom:0vh;
    background-attachment: fixed;
    min-height:100%;
}

h1 {
  font-size: 80px;
}

h2 {
  font-size: 60px;
}

p {
  font-size: 28px;
}

/* Logo: */
.logo{
    display:block;
    margin-left:auto;
    margin-right:auto;
    margin-top:20px;
    width:1000px;
}

.slogan{
    font-size:40px;
    text-align:center;
}

.slogan-2{
    font-size:20px;
    text-align:center;
}

#logoMenu{
    height: 40px;
    padding-top:auto;
    padding-bottom:auto;
}

/* Overhead menu: */
.menu{
    text-align: center;
    font-size: 30px;
    background-image: url('sumber/navbar_shd.png');
    padding-top:16px;
    padding-bottom:16px;
    position:fixed;
    top:0;
    width:100%;
    z-index: 20;
}

.active{
    color:lightgreen;
    text-decoration:underline;
}

.menu #menu-button{
    display: inline;
    margin-right: 50px;
    margin-left:50px;
}

/* Links inside the "menu" div: */
.menu a:link{
    color:white;
    text-decoration: none;
}

.menu a:visited{
    color:white;
}

.menu a:hover{
    color:lightblue;
    text-decoration:underline;
    text-decoration-color: rgb(85, 119, 164);
}

.menu a:active{
    text-decoration: white;
}

.mainPageContent{
    margin-left:5vw;
    margin-right:5vw;
    text-shadow: 4px 4px 2px black;
}

.lmlogo {    
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
}

.lm1logo {    
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 72%;
}

.belowLogo{
    font-size:26px;
    margin-left: 13vw;
    margin-right:13vw;
    text-align:center;
}

.belowLogoImage{
    width:100%;
    padding-left:auto;
    padding-right:auto;
    image-rendering:crisp-edges;
}

footer{
    background-color: black;
    padding:20px;
    bottom:0px;
    box-shadow: 0 50vh 0 50vh #000000;
    font-size:20px;
    text-align:center;
}

footer a:link{
    color:lightblue;
    text-decoration: none;
}

footer a:visited{
    color:lightblue;
    text-decoration: none;
}

footer a:active{
    color:white;
    text-decoration: underline;
}

footer a:hover{
    color:white;
    text-decoration:underline;
    text-decoration-color: lightblue;
}

hr{
    height:2px;
    background-color:white;
    color:white;
}

.mainTitle{
    font-size:100px;
    text-shadow: 4px 4px 6px gray;
    font-weight:600;
    
    text-align:center;
}

.defaulttext{
    text-align:center;
}

.mainTitleLine{
    height:6px;
}

footer table, th, td{
    width:50vh;
    padding:3px;
    font-weight: 0;
}

.grid-container {
    display: inline-grid;
    grid-template-columns: 1fr 1fr 1fr;
    padding: 10px;
    row-gap:70px;
    column-gap:60px;
  }

.gamePicture{
    width:100%;
    border: 5px solid black;
    border-radius:15px;
}

a:link{
    color:lightblue;
  }

a:visited{
    color:lightblue;
  }

a:active{
    color:lightblue;
  }

a:hover{
    color:lightblue;
  }


.aboutus-text{
    justify-content: center;
    text-align:left;
    margin-left:7.5vw;
    margin-right:7.5vw;
  }

.center{
    display:flex;
    align-items:center;
    flex-direction: column;
    margin-left:auto;
    margin-right:auto;
}

.Contact-title{
    font-size:60px;
    font-weight:700;
}

.contact-page{
    text-align:left;
    padding:20px;
    word-break:break-all;
}

#text-picture-aboutus{
    font-size:20px;
    text-align:center;
}

#aboutus-people-titles{
    font-size:48px;
    font-weight:800;
}

.articlesPage{
    text-align:left;
}

.article-titlelist{
    font-size:50px;
    text-decoration:underline;
}

.article-game{
    font-size:20px;
    color:grey;
}

#article-title{
    font-size:38px;
    font-weight:700;
}

#article-text{
    text-align:left;
    margin-left:10vw;
    margin-right:10vw;
}

#game-information{
    color:gray;
}

#articleimage{
    width:100%;
    image-rendering:crisp-edges;
}

#greeting{
    font-family:'Times New Roman', Times, serif;
    font-size:72px;
    color:red;
}

.hidden, .hidden3 {
    display: none;
}

.hidden2 {
    visibility: hidden;
}

.gamecanvas{
    display:block;
    margin-left:auto;
    margin-right:auto;
    text-align:center;
}

#search-bar{
    font-size: 30px;
    background-color:rgba(0,0,0,0);
    color: white;
    border:0px solid;
    border-bottom: 3px solid;
    width:25vw;
}

#search-bar:focus, input:focus{
    outline: none;
}

.spoiler{
    color:black;
    background-color:black;
    padding:5px;
    outline:2px solid gray;
}

.spoiler:hover{
    color:white;
    background-color:black;
}

.code{
    background-color:black;
    outline:2px solid gray;
    padding:5px;
}

#message{
    width:100%;
    height:300px;
}

#email{
    width:50%;
}

#name{
    width:50%;
}

.email-page{
    background-color:rgba(0,0,0,0);
    color: white;
    border:3px solid white;
    padding:6px;
    font-size:24px;
}

.email-page:focus{
    outline: none;
}

.numbered-list{
    list-style:decimal;
}

.button{
    font-size: 20px;
    color: white;
    margin-left: 15px;
    padding: 15px;
    background-color: black;
    border-radius: 100px;
    border-width: 3px;
    width:200px;
    text-decoration:none;
}

.button:hover{
    background-color: rgb(20,20,20);
    text-decoration: underline;
}

.button:active{
    color: black;
    background-color: rgb(150,150,150);
}

.lm-entry {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 50%;
  z-index: 1;
    
  transition: 0.3s ease-in-out;
  transform: scale(1);
}

.lm-entry:hover {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 50%;
    
  transform: scale(1.05);
}

.lm-about{
    margin-right:160px;
    margin-left:160px;
    text-align:center;
    background-color: rgba(0,0,0,0.4);
}

.lm-buttons{
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 18%;
  z-index: 1;
    
  transition: 0.3s ease-in-out;
  transform: scale(1);
}

.lm-buttons:hover {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 18%;
    
  transform: scale(1.05);
}

#music-orb-prev {
  width: 120px;
  height: 120px;
  border-radius: 100%;
  box-shadow: 0 0 0px #00ffc3, 0 0 20px #00ffc3, 0 0 40px #00ffc3;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  position: relative;
  z-index: 2;
}

#music-orb-prev:hover {
  transform: scale(1.1);
  box-shadow: 0 0 0px #00ffc3, 0 0 30px #00ffc3, 0 0 60px #00ffc3;
}

#music-orb-next {
  width: 120px;
  height: 120px;
  border-radius: 100%;
  box-shadow: 0 0 0px #00ffc3, 0 0 20px #00ffc3, 0 0 40px #00ffc3;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  position: relative;
  z-index: 2;
}

#music-orb-next:hover {
  transform: scale(1.1);
  box-shadow: 0 0 0px #00ffc3, 0 0 30px #00ffc3, 0 0 60px #00ffc3;
}

#track-info {
  transition: opacity 0.4s ease;
}

#track-info.show {
  opacity: 1;
}

.musicrow {
  display: flex;
  justify-content: center; /* or space-between, space-around, etc */
  align-items: center; /* vertical centering if there's height */
  gap: 120px; /* space between objects */
}

.musicbox {
  display: flex;
  justify-content: center; /* or space-between, space-around, etc */
  align-items: center; /* vertical centering if there's height */
    
  width: 200px;
  height: 200px;
  background: transparent;
  text-align: center;
  line-height: 200px;
  border-radius: 10px;
}

audio {
  display: block;
  margin: 0 auto;
  filter: drop-shadow(0 0 4px #7fffd4);
}

.video-widgets-container {
  display: flex;
  justify-content: center; /* centers the whole group */
  align-items: flex-start; /* aligns video & widget tops */
  gap: 240px; /* space between video and widgets */
  margin-top: 100px;
}

.widgets-right iframe {
  display: block;
  margin-bottom: 100px;
}

.gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 3 equal columns */
  gap: 15px;
  padding: 20px;
}

.gallery img {
  width: 100%;
  height: auto;
  border-radius: 12px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.2);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.gallery img:hover {
  transform: scale(1.05);
  box-shadow: 0 0 15px rgba(255, 255, 255, 0.4);
}

.gjlogolink {    
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 30%;
}

.corner-buttons {
  position: fixed;
  bottom: 20px;
  right: 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  z-index: 999; /* Make sure it’s above other stuff */
  animation: floatIn 0.4s ease-out;
}

.corner-buttons img {
  width: 120px;
  height: 120px;
  border-radius: 50%; /* Makes it a perfect circle */
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  cursor: pointer;
}

.corner-buttons img:hover {
  transform: scale(1.1);
  box-shadow: 0 0 12px rgba(255, 255, 255, 0.5);
}

.pdf-spread {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin: 30px auto;
  flex-wrap: wrap;
}

.pdf-spread canvas {
  box-shadow: 0 0 10px rgba(0,0,0,0.3);
  border-radius: 4px;
}

/* Screen width of less than 600 pixels: */
@media (max-width: 600px){

    .pdf-spread iframe {
      height: 60vh;
    }
    
    .menu{
        font-size:15px;
    }

    #logoMenu{
        height:20px;
    }

    .menu #menu-button{
        margin-right:5px;
        margin-left:5px;
    }

    .logo{
        margin-top:10px;
        width:300px;
    }

    .slogan{
        font-size:20px;
    }
    
    .slogan-2{
        font-size:10px;
    }

    .mainPageContent{
        margin-left:1vw;
        margin-right:1vw;
    }

    .belowLogo{
        font-size:16px;
        margin-left: 1vw;
        margin-right:1vw;
    }

    footer{
        padding:10px;
        font-size:15px;
    }

    footer table, th, td{
        width:20vw;
    }

    .mainTitle{
        font-size:70px;
    }
    .grid-container {
        padding: 5px;
        row-gap:60px;
        column-gap:15px;
        grid-template-columns: 1fr;
    }

    .textgame{
        font-size:14px;
    }

    .gameCounter{
        font-size:32px;
    }

    .aboutus-text{
        margin-left:0vh;
        margin-right:0vh;
      }

      #picture-aboutus{
        width:100px;
    }
    
    #text-picture-aboutus{
        font-size:14px;
    }
    
    #aboutus-people-titles{
        font-size:28px;
    }

    .Contact-title{
        font-size:30px;
    }
    
    .contact-page{
        padding:0px;
    }

    #pfps{
        width:64px
    }
    
    .article-titlelist{
        font-size:26px;
        text-decoration:underline;
    }
    
    .article-game{
        font-size:15px;
        color:grey;
    }
    
    #article-title{
        font-size:32px;
        font-weight:700;
    }
    
    #article-text{
        text-align:left;
        margin-left: 1vw;
        margin-right:1vw;
    }

    #greeting{
        font-size:48px;
    }

    #search-bar{
        font-size: 16px;
        width:60%
    }

    .gamecount-text{
    font-size:30px;
}

    .button{
    font-size: 15px;
    border-radius: 50px;
    border-width: 2px;
    width:100px;
}

    .video-widgets-container {
      gap: 40px; /* space between video and widgets */
      flex-direction: column;
      align-items: center;
    }

}


/* Screen width of more than 600 pixels and less than 1400 pixels: */
@media (min-width: 600px) and (max-width:1000px){
    
    .pdf-spread iframe {
      height: 60vh;
    }
    
    .menu{
        font-size:20px;
    }

    #logoMenu{
        height:20px;
    }

    .menu #menu-button{
        margin-right:5px;
        margin-left:5px;
    }

    .logo{
        margin-top:10px;
        width:300px;
    }

    .slogan{
        font-size:20px;
    }
    
    .slogan-2{
        font-size:10px;
    }

    .mainPageContent{
        margin-left:2vw;
        margin-right:2vw;
    }

    .belowLogo{
        font-size:20px;
        margin-left: 2vw;
        margin-right:2vw;
    }

    footer{
        padding:10px;
        font-size:15px;
    }

    footer table, th, td{
        width:20vw;
    }

    .mainTitle{
        font-size:80px;
    }
    .grid-container {
        padding: 5px;
        row-gap:80px;
        column-gap:30px;
        grid-template-columns: 1fr 1fr;
    }

    .textgame{
        font-size:14px;
    }

    .gameCounter{
        font-size:32px;
    }

    .aboutus-text{
        margin-left:0vh;
        margin-right:0vh;
      }

      #picture-aboutus{
        width:100px;
    }
    
    #text-picture-aboutus{
        font-size:14px;
    }
    
    #aboutus-people-titles{
        font-size:28px;
    }

    .Contact-title{
        font-size:30px;
    }
    
    .contact-page{
        padding:0px;
    }

    #pfps{
        width:64px
    }

    .article-titlelist{
        font-size:30px;
        text-decoration:underline;
    }
    
    .article-game{
        font-size:15px;
        color:grey;
    }
    
    #article-title{
        font-size:32px;
        font-weight:700;
    }
    
    #article-text{
        text-align:left;
        margin-left:1vw;
        margin-right:1vw;
    }

    #greeting{
        font-size:52px;
    }

    #search-bar{
        font-size: 22px;
    }

    .gamecount-text{
    font-size:48px;
}

    .button{
        font-size: 15px;
        border-radius: 60px;
        border-width: 2px;
        width:125px;
}

}


/* Screen width of more than 1000 pixels and less than 1600 pixels: */
@media (min-width: 1000px) and (max-width:1600px){

    .menu{
        font-size:30px;
    }

    #logoMenu{
        height:40px;
    }

    .menu #menu-button{
        margin-right:50px;
        margin-left:50px;
    }

    .logo{
        margin-top:10px;
        width:700px;
    }

    .slogan{
        font-size:40px;
    }
    
    .slogan-2{
        font-size:20px;
    }

    .mainPageContent{
        margin-left:5vw;
        margin-right:5vw;
    }

    .belowLogo{
        font-size:24px;
        margin-left: 5vw;
        margin-right:5vw;
    }

    footer{
        padding:10px;
        font-size:24px;
    }

    footer table, th, td{
        width:40vh;
    }

    .mainTitle{
        font-size:85px;
    }
    .grid-container {
        padding: 5px;
        row-gap:80px;
        column-gap:30px;
        grid-template-columns: 1fr 1fr;
    }

    .textgame{
        font-size:14px;
    }

    .gameCounter{
        font-size:48px;
    }

    .aboutus-text{
        margin-left:0vh;
        margin-right:0vh;
      }

      #picture-aboutus{
        width:100px;
    }
    
    #text-picture-aboutus{
        font-size:14px;
    }
    
    #aboutus-people-titles{
        font-size:28px;
    }

    .Contact-title{
        font-size:30px;
    }
    
    .contact-page{
        padding:0px;
    }

    #pfps{
        width:64px
    }

    .article-titlelist{
        font-size:40px;
        text-decoration:underline;
    }
    
    .article-game{
        font-size:15px;
        color:grey;
    }
    
    #article-title{
        font-size:32px;
        font-weight:700;
    }
    
    #article-text{
        text-align:left;
        margin-left: 1vw;
        margin-right:1vw;
    }

    #greeting{
        font-size:60px;
    }

    #search-bar{
        font-size: 26px;
    }

     .gamecount-text{
    font-size:56px;
}
    
    .button{
        font-size: 20px;
        border-radius: 80px;
        border-width: 3px;
        width:175px;
}

}


/* above 3840 pixels and below 6000: */
@media (min-width: 3840px) and (max-width:6000px){
    .grid-container {
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }
}

/* above 6000 pixels: */
@media (min-width: 6000px){
    .grid-container {
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    }
}
