html, body {
    padding: 0;
    margin: 0;
    background-color: #202124;

    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 900;
    font-style: normal;
} 

* {
  box-sizing: border-box;
}

.page {
  position: relative;
  height: 100vh;
}

.banner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

    display: flex;
    align-items: center;
    justify-content: center;
    height: 100px;
    background-color: #1a1a1a;
    color: #5feca8; 
    text-shadow: 0 0 5px #5feca8, 0 0 10px #5feca8, 0 0 20px #3c9f71, 0 0 30px #3c9f71;
    font-size: clamp(3.5rem, 3.5vw + 2rem, 6rem); 
    font-weight: bolder;
    padding: 10px;
    z-index: 10; 
}

.MusicBody {
    background-color: var(--colorLight2);
    height: calc(100vh - 170px); 
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
 
/* .MusicBody {
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden; 
} */

/* -- carousel -- */

.carousel {
  transform: perspective(1000px) rotateX(83deg); 
  transform-style: preserve-3d;
  display: grid;
  place-items: center;
  /* margin-top: 240px;  */
  animation: rotate 15s linear infinite;
  transition: all 1s;
  opacity: 1;
  z-index: 1;
}

.carousel.hidden {
  animation-play-state: paused;
  pointer-events: none;
}

/* .carousel:hover {
  animation-play-state: paused;
} */

.img {
  display: grid;
  place-items: center;
  width: 200px;
  height: 200px; 
  position: absolute;
  -webkit-box-reflect: below 3px linear-gradient(transparent 75%, rgba(255, 255, 255, 0.125));
  /* -webkit-backface-visibility: hidden;
          backface-visibility: hidden; */
  padding: 0;
  transform-origin: center center;
  background-size: 200px 200px;
  cursor: pointer;
}

.disc {
  display: grid;
  place-items: center;
  width: 200px;
  height: 200px; 
  position: absolute;
  -webkit-box-reflect: below 3px linear-gradient(transparent 75%, rgba(255, 255, 255, 0.125));
  padding: 0;
  transform-origin: center center;
  background-size: 200px 200px;  
}

#img1 {
  transform: rotateZ(0deg) rotateX(90deg) translateY(120px) translateZ(180px) rotateZ(180deg); 
  background-image: url('images/GET\ EM\ CD2.webp');
}

#img2 {
  transform: rotateZ(72deg) rotateX(90deg) translateY(120px) translateZ(180px) rotateZ(180deg);
 background-image: url('images/fuel_sunburn.png');}

#img3 {
  transform: rotateZ(144deg) rotateX(90deg) translateY(120px) translateZ(180px) rotateZ(180deg);
 background-image: url('images/thersty\ merc.png');}

#img4 {
  transform: rotateZ(216deg) rotateX(90deg) translateY(120px) translateZ(180px) rotateZ(180deg);
 background-image: url('images/wonder\ whats\ next\ new.png');}

#img5 {
  transform: rotateZ(288deg) rotateX(90deg) translateY(120px) translateZ(180px) rotateZ(180deg);
 background-image: url('images/Disturbed\ Decadence.png');}

/* Disc back */
#disc1 {
  transform: rotateZ(0deg) rotateX(90deg) translateY(120px) translateZ(179px) rotateZ(180deg);
  background-image: url('images/Compact_disc.png');
}

#disc2 {
  transform: rotateZ(72deg) rotateX(90deg) translateY(120px) translateZ(179px) rotateZ(180deg);
  background-image: url('images/Compact_disc.png');
}

#disc3 {
  transform: rotateZ(144deg) rotateX(90deg) translateY(120px) translateZ(179px) rotateZ(180deg);
  background-image: url('images/Compact_disc.png');
}

#disc4 {
  transform: rotateZ(216deg) rotateX(90deg) translateY(120px) translateZ(179px) rotateZ(180deg);
  background-image: url('images/Compact_disc.png');
}

#disc5 {
  transform: rotateZ(288deg) rotateX(90deg) translateY(120px) translateZ(179px) rotateZ(180deg);
  background-image: url('images/Compact_disc.png');
}

#overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: opacity 1s;
  pointer-events: none;
  z-index: 999;
}

#overlay.visible {
  opacity: 1;
  pointer-events: auto;
}

.selected-img {
  width: 300px;
  height: 300px;
  background-size: cover;
  opacity: 0;
  transition: opacity 1s;
  cursor: pointer;
}

.selected-img.visible {
  opacity: 1;
}

.selected-img.spinning {
  animation: spin 2s linear infinite;
}

.no-pointer {
  pointer-events: none;
}

@keyframes rotate {
  to {
    transform: perspective(1000px) rotateX(83deg) rotateZ(360deg);
  } 
} 

@keyframes spin {
  to {
    transform: rotateZ(360deg);
  }
}

/* @media screen and (max-width: 992px) {
  .carousel {
    transform: scale(0.7);
  }
} */


/* ---- */