body {
  height: 100vh;
  background: #446623;
  overflow: hidden;
  perspective: 600px;
  position: relative;
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

:root {
  --wood-panel-start: 33vh;
  --wood-panel-height: 20vh;
}

#woodpanel-rail {
  position: absolute;
  top: calc(var(--wood-panel-start) - 0.5vh);
  height: 0.5vh;
  width: 100vw;
  background-color: #432901;
  filter: brightness(0.5);
  z-index: 2;
}

#woodpanel {
  position: absolute;
  top: var(--wood-panel-start);
  height: var(--wood-panel-height);
  width: 100vw;
  background-color: #432901;
  background: url(wood.png);
  background-size: 400px 100px;
  animation: move-background 6s linear infinite;
  filter: brightness(0.5);
  z-index: 1;
}

#woodpanel-toe {
  position: absolute;
  top: calc(var(--wood-panel-start) + var(--wood-panel-height)+1);
  height: 1.5vh;
  width: 100vw;
  background-color: #432901;
  filter: brightness(0.5);
  z-index: 2;
}

#checkerboard {
  position: absolute;
  bottom: -46%;
  right: -60%;
  height: 192vh;
  width: 300vw;
  transform: rotateX(75deg);
  transform-origin: center center;
  transform-style: preserve-3d;
  background-color: #555555;
  background-size: 100px 100px;
  background-position: 0 0, 50px 50px;
  background-image: linear-gradient(45deg, #030906 26%, transparent 25%, transparent 75%, #030906 75%, #030906),
                    linear-gradient(45deg, #030906 26%, transparent 25%, transparent 75%, #030906 75%, #030906);
  animation: move-background 6s linear infinite;
  z-index: 0;
}

@keyframes move-background {
  to {
    background-position: 0 100px, 50px 150px;
  }
}

.fog {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: linear-gradient(
    rgba(100, 100, 100, 0.9) 40%,   
    rgba(100, 100, 100, 0.7) 50%, 
    rgba(100, 100, 100, 0.4) 60%, 
    rgba(100, 100, 100, 0.2) 70%, 
    rgba(100, 100, 100, 0.0) 80%
  );
  opacity: 0.7;
  z-index: 9;
  filter: blur(10px);
}

#main-poster {
  position: absolute;
  max-height: 85vh;
  max-width: 80vw;
  width: auto;
  height: auto;
  object-fit: contain;
  z-index: 10;
  opacity: 0.65;
  top: 63%;
  left: 50%;
  transform: translate(-50%, -60%);
}

.wall-area {
  position: absolute;
  top: 0;
  width: 100%;
    height: var(--wood-panel-start);
  z-index: 8;
    }

#wall-posterL1 {
  position: absolute;
  top: 12%;
  left: 5%;
  max-height: 25vh;
  max-width: 20vw;
  opacity: 0.65;
  object-fit: contain;
}

#wall-posterL2 {
  position: absolute;
  top: 12%;
  left: 28%;
  max-height: 25vh;
  max-width: 20vw;
  opacity: 0.65;
  object-fit: contain;
}

#wall-posterR1 {
  position: absolute;
  top: 12%;
  right: 28%;
  max-height: 25vh;
  max-width: 20vw;
  opacity: 0.65;
  object-fit: contain;
}

#wall-posterR2 {
  position: absolute;
  top: 12%;
  right: 5%;
  max-height: 25vh;
  max-width: 15vw;
  opacity: 0.65;
  object-fit: contain;
}

.center-wrapper {
  position: absolute;
  top: 5%;
  left: 50%;
  transform: translate(-50%, 0);
  text-align: center;
  z-index: 10;
  width: 100%;
  max-width: 600px;
}

.searchform {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 0 20px;
}

.form-control.search {
  padding: 10px;
  font-size: 16px;
  border: 1px solid #ccc;
  border-radius: 4px;
  outline: none;
  width: 60%;
  max-width: 400px;
}

.button {
  padding: 10px 15px;
  font-size: 16px;
  background-color: #303134;
  color: white;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  white-space: nowrap;
}

.button:hover {
  background-color: #555555;
}

@media (max-width: 768px) {
  :root {
    --wood-panel-start: 40vh;
    --wood-panel-height: 15vh;
  }

    #wall-posterL1 {
    left: 2%;
    max-width: 25vw;
  }
  
  #wall-posterL2 {
    left: 30%;
    max-width: 25vw;
  }
  
  #wall-posterR1 {
    right: 23%;
  }
  
  #wall-posterR2 {
    right: 2%;
    max-width: 20vw;
  }
  
  .form-control.search {
    width: 50%;
  }

  #main-poster {
    top: 50%;
    max-height: 70vh;
    max-width: 90vw;
  }

}

@media (min-width: 1000px) {
    :root {
    --wood-panel-start: 30vh;
  }
  
  #wall-posterL1 {
    left: 10%;
  }
  
  #wall-posterL2 {
    left: 23%;
  }
  
  #wall-posterR1 {
    right: 23%;
  }
  
  #wall-posterR2 {
    right: 17%;
    max-height: 13vh;
  }

  #main-poster {
    max-height: 80vh;
  }
}

@media (orientation: portrait) {
  :root {
    --wood-panel-start: 40vh;
    --wood-panel-height: 15vh;
  }

  .form-control.search {
    top: 0%;
    width: 100%;
  }

  #checkerboard {
    bottom: -60%;
  }

  #wall-posterL1 {
    top: 20%;
  }

  #wall-posterL2 {
    top: 20%;
  }

  #wall-posterR1 {
    top: 20%;
  }

  #wall-posterR2 {
    top: 20%;
  }
  
  #main-poster {
    top: 60%;
    max-height: 70vh;
    max-width: 90vw;
  }
}
