/* Global Styles */
body {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100vh;
    background-color: #000;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    overflow: hidden; /* This prevents scrolling */
  }
  
.text-overlay svg text {
  fill: red;
  filter: drop-shadow(0 0 2px red) drop-shadow(0 0 4px red);
}

h2 {
  font-family: "Arial, sans-serif";
  writing-mode: vertical-lr;
  text-orientation: upright;
  font-size: 1rem;
  margin: 0;
  color: red; /* Bright neon red */
}

  
 .svg-container{
 width: 200px;
  height: 200px;
  background-color: transparent;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: -25px;
  z-index: 10;
 pointer-events: none;
 }
  
  /* Container Styles */
.container {
  width: 150px;
  height: 160px;
  background-color: transparent;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  margin-top: 70px;
  transform: scale(1.5);
}
  
  .vinyl-container {
    position: absolute;
    width: 100px;
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  /* Needle Elements */
  .needle-container {
    width: 51px;
    height: 100px;
    background-color: transparent;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    z-index: 1;
    top: 25px;
    left: 110px;
    transform: rotate(0deg);
    transform-origin: 26px 14px;
    transition: transform 1.5s; /* Changed from 0.5s to 0s for immediate movement */
  }
  
  /* Add this class for when playing */
  .needle-container.playing {
    transform: rotate(27deg);
  }
  
  
  
  .needle-centerline {
    width: 1px;
    height: 80px;
    background-color: red;
    box-shadow: 0 0 2px red, 0 0 4px red;
    position: absolute;
    left: 25px;
    top: 5px;
    z-index: 1;
  }
  
  .needle-tip {
    width: 3px;
    height: 5px;
    border: 1px solid red;
    box-shadow: 0 0 2px red, 0 0 4px red;
    position: absolute;
    top: 85px;
    left: 23px;
  }
  
  /* Center Elements */
  .center {
    width: 11px;
    height: 11px;
    background-color: transparent;
    border-radius: 50%;
    border: 1px solid red;
    box-shadow: 0 0 2px red, 0 0 4px red;
    position: absolute;
    top: 9px;
    left: 19px;
    z-index: 2;
  }
  
  .center2 {
    width: 5px;
    height: 5px;
    background-color: transparent;
    border-radius: 50%;
    border: 1px solid red;
    box-shadow: 0 0 2px red, 0 0 4px red;
    position: absolute;
    top: 12px;
    left: 22px;
    z-index: 2;
  }
  
  /* Neon Circle Elements */
  .neoncircle7,
  .neoncircle6,
  .neoncircle5,
  .neoncircle4,
  .neoncircle3,
  .neoncircle2 {
    position: absolute;
    border-radius: 50%;
    border: 1px solid red;
    background-color: transparent;
    box-shadow: 0 0 2px red, 0 0 4px red;
  }
  
  .neoncircle7 {
    width: 100px;
    height: 100px;
    z-index: 2; /* Above the middle rings */
  }
  
  .neoncircle6 {
    width: 85px;
    height: 85px;
    z-index: 1;
  }
  
  .neoncircle5 {
    width: 70px;
    height: 70px;
    z-index: 1;
  }
  
  .neoncircle4 {
    width: 55px;
    height: 55px;
    z-index: 1;
  }
  
  .neoncircle3 {
    width: 40px;
    height: 40px;
    z-index: 1;
  }
  
  .neoncircle2 {
    width: 25px;
    height: 25px;
    z-index: 2; /* Above the blackout */
  }
  
  /* Animation Elements */
  .blackout {
    position: absolute;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    z-index: 1;
    background: conic-gradient(
      transparent 0deg,
      transparent 90deg,
      black 90deg, 
      black 180deg,
      transparent 180deg,
      transparent 270deg,
      black 270deg,
      black 360deg
    );
    transform: rotate(0deg);
  }
  
  /* Play/Pause button container */
  .play-pause-button {
    position: absolute;
    width: 20px;
    height: 20px;
    z-index: 3; /* Above all other elements */
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  /* Play icon (triangle) */
  .play-icon {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 0 7px 12px;
    border-color: transparent transparent transparent red;
    filter: drop-shadow(0 0 2px red) drop-shadow(0 0 4px red);
    transition: opacity 0.2s ease, transform 0.2s ease;
    position: absolute;
    left: 5px
  }
  
  /* Pause icon (two bars) */
  .pause-icon {
    width: 12px;
    height: 14px;
    position: absolute;
    opacity: 0;
    display: flex;
    justify-content: space-between;
    transition: opacity 0.2s ease;
  }
  
  .pause-icon::before,
  .pause-icon::after {
    content: '';
    width: 4px;
    height: 14px;
    background-color: red;
    box-shadow: 0 0 2px red, 0 0 4px red;
  }
  
  /* State toggling with JavaScript */
  .play-pause-button.playing .play-icon {
    opacity: 0;
    transform: scale(0.8);
  }
  
  .play-pause-button.playing .pause-icon {
    opacity: 1;
  }
  
  /* Hover effect */
  .play-pause-button:hover .play-icon,
  .play-pause-button:hover .pause-icon::before,
  .play-pause-button:hover .pause-icon::after {
    filter: drop-shadow(0 0 1px red) drop-shadow(0 0 1px rgba(255, 0, 0, 0.8));
  }


.speaker-container {
  display: flex;
  transform: scale(0.5);
  position: absolute;
  margin-top: 360px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s;
}

.speaker-visible {
  opacity: 1;
  visibility: visible;
  animation: flicker 1.5s ease-in-out;
}

@keyframes flicker {
  0% { opacity: 0; }
  10% { opacity: 0.8; }
  15% { opacity: 0.2; }
  20% { opacity: 1; }
  30% { opacity: 0.3; }
  40% { opacity: 0.8; }
  50% { opacity: 0.4; }
  60% { opacity: 1; }
  100% { opacity: 1; }
}

.speaker {
  position: relative;
  width: 180px;
  height: 340px; /* Slightly taller for better proportions */
  border: 2px solid red;
  border-radius: 8px; /* Slightly rounded corners */
  box-shadow: 0 0 10px red, inset 0 0 5px #ff0044;
  transition: box-shadow 0.15s ease-out;
}


.woofer {
  position: absolute;
  top: 150px;
  left: 50%;
  transform: translateX(-50%);
  width: 110px;
  height: 110px;
  border: 2px solid red;
  border-radius: 50%;
  box-shadow: 0 0 5px red;
}

.woofer-inner {
  position: absolute;
  top: 165px;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 80px;
  border: 1px solid red;
  border-radius: 50%;
  box-shadow: 0 0 3px red;
  transition: transform 0.1s ease-out;
}

.woofer-center {
  position: absolute;
  top: 190px;
  left: 50%;
  transform: translateX(-50%);
  width: 30px;
  height: 30px;
  border: 2px solid red;
  border-radius: 50%;
  box-shadow: 0 0 5px red;
}

.woofer-dust-cap {
  position: absolute;
  top: 197.5px;
  left: 50%;
  transform: translateX(-50%);
  width: 15px;
  height: 15px;
  border: 1px solid red;
  border-radius: 50%;
  box-shadow: 0 0 3px red;
}

/* Add subwoofer elements */
.subwoofer {
  position: absolute;
  top: 270px;
  left: 50%;
  transform: translateX(-50%);
  width: 70px;
  height: 70px;
  border: 2px solid red;
  border-radius: 50%;
  box-shadow: 0 0 5px red;
  transition: transform 0.15s ease-out;
}

.subwoofer-center {
  position: absolute;
  top: 290px;
  left: 50%;
  transform: translateX(-50%);
  width: 20px;
  height: 20px;
  border: 1px solid red;
  border-radius: 50%;
  box-shadow: 0 0 3px red;
  transition: transform 0.15s ease-out;
}

.tweeter {
  position: absolute;
  top: 50px;
  left: 50%;
  transform: translateX(-50%);
  width: 50px;
  height: 50px;
  border: 2px solid red;
  border-radius: 50%;
  box-shadow: 0 0 5px red;
}

.tweeter-inner {
  position: absolute;
  top: 57.5px;
  left: 50%;
  transform: translateX(-50%);
  width: 35px;
  height: 35px;
  border: 1px solid red;
  border-radius: 50%;
  box-shadow: 0 0 3px red;
  transition: transform 0.08s ease-out;
}

.tweeter-center {
  position: absolute;
  top: 67.5px;
  left: 50%;
  transform: translateX(-50%);
  width: 15px;
  height: 15px;
  border: 1px solid red;
  border-radius: 50%;
  box-shadow: 0 0 3px red;
}

.tweeter-dust-cap {
  position: absolute;
  top: 71.25px;
  left: 50%;
  transform: translateX(-50%);
  width: 8px;
  height: 8px;
  border: 1px solid red;
  border-radius: 50%;
  box-shadow: 0 0 2px red;
}

.woofer, .woofer-center, .woofer-dust-cap {
  /* animation: woofer-pulse 0.5s infinite; */
  /* animation-play-state: paused; */
  transition: transform 0.05s ease-out;
}

.tweeter, .tweeter-center, .tweeter-dust-cap {
  /* animation: tweeter-pulse 0.2s infinite; */
  /* animation-play-state: paused; */
  transition: transform 0.03s ease-out;
}

@keyframes woofer-pulse {
  0% { transform: translateX(-50%) scale(1); }
  50% { transform: translateX(-50%) scale(1.08); }
  100% { transform: translateX(-50%) scale(1); }
}

/* Tweeter animation - smaller, faster movement for high frequencies */
@keyframes tweeter-pulse {
  0% { transform: translateX(-50%) scale(1); }
  33% { transform: translateX(-50%) scale(1.05); }
  66% { transform: translateX(-50%) scale(0.97); }
  100% { transform: translateX(-50%) scale(1); }
}

.speaker-screw-1 {
  position: absolute;
  top: 15px;
  left: 15px;
  width: 6px;
  height: 6px;
  border: 1px solid red;
  border-radius: 50%;
  box-shadow: 0 0 3px red;
}

.speaker-screw-2 {
  position: absolute;
  top: 15px;
  right: 15px;
  width: 6px;
  height: 6px;
  border: 1px solid red;
  border-radius: 50%;
  box-shadow: 0 0 3px red;
}

.speaker-screw-3 {
  position: absolute;
  bottom: 15px;
  left: 15px;
  width: 6px;
  height: 6px;
  border: 1px solid red;
  border-radius: 50%;
  box-shadow: 0 0 3px red;
}

.speaker-screw-4 {
  position: absolute;
  bottom: 15px;
  right: 15px;
  width: 6px;
  height: 6px;
  border: 1px solid red;
  border-radius: 50%;
  box-shadow: 0 0 3px red;
}

.brand {
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 40px;
}

.brand svg {
  width: 100%;
  height: 100%;
}

.brand svg path {
  fill: red;
}

.speaker-cord {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  width: 2px;
  height: 30px;
  background-color: red;
  box-shadow: 0 0 3px red;
}

.connection-lines {
  position: absolute;
  bottom: -60px;
  left: 0;
  right: 0;
  height: 30px;
  display: flex;
  justify-content: center;
}

.connection-line {
  width: 160px;
  height: 1px;
  background-color: red;
  box-shadow: 0 0 3px red;
  position: relative;
}

.connection-line::after {
  content: '';
  position: absolute;
  top: -2px;
  right: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: red;
  box-shadow: 0 0 3px red;
}

.alcohols {
  flex-direction: row;
  display: flex;
  width: 100%;
  position: absolute;
  top: 170px;
  left: 0;
  justify-content: center;
  align-items: flex-start;
  z-index: 4000;
  /* Change these to make it visible by default */
  opacity: 1;
  visibility: visible;
  transition: opacity 0.3s;
}

/* Keep this class for toggling later */
.alcohol-hidden {
  opacity: 0;
  visibility: hidden;
}

.alcohol-visible {
  opacity: 1;
  visibility: visible;
  animation: flicker 1.5s ease-in-out;
}

.sign {
display: flex;
flex-direction: column;
justify-content: flex-start;
align-items: center;
z-index: 1500;
padding: 5px;
gap: 10px;
width: fit-content;
}
.sign2 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  z-index: 1500;
  padding: 5px;
  width: fit-content;
  gap: 10px;
}

.sign3 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  z-index: 1500;
  padding: 5px;
  width: fit-content;
  gap: 10px;
}

.sign4 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  z-index: 1500;
  padding: 5px;
  width: fit-content;
  gap: 10px;
}

.sign5 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  z-index: 1500;
  padding: 5px;
  width: fit-content;
  gap: 10px;
  }


  .menu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: black; /* Semi-transparent black background */
    z-index: 50; /* Very high z-index to appear above everything */
    opacity:0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0.8s ease;
  }
  
  .menu-overlay.active {
    opacity: 1;
    visibility: visible;
  }
  
  /* Menu content */
  .menu-content {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: red;
  }
  
  /* Close button */
  .menu-header {
    position: absolute;
    top: 20px;
    right: 20px;
  }
  
  .close-menu {
    font-size: 32px;
    cursor: pointer;
    color: white;
    margin: 0;
  }
  
  /* Menu navigation */
  .menu-nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
    text-align: center;
  }
  
  .menu-nav li {
    margin: 20px 0;
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.4s ease, transform 0.4s ease;
    transition-delay: 0.2s; /* Base delay */
  }
  
  .menu-overlay.active .menu-nav li {
    opacity: 1;
    transform: translateY(0);
  }
  
  /* Add increasing delay for each menu item */
  .menu-nav li:nth-child(2) { transition-delay: 0.3s; }
  .menu-nav li:nth-child(3) { transition-delay: 0.4s; }
  .menu-nav li:nth-child(4) { transition-delay: 0.5s; }
  .menu-nav li:nth-child(5) { transition-delay: 0.6s; }
  .menu-nav li:nth-child(6) { transition-delay: 0.7s; }
  
  .menu-nav a {
    color: red;
    text-decoration: none;
    font-size: 24px;
    transition: color 5s ease;
  }
  
  .menu-nav a:hover {
    color: #D3072B; /* Same gold color as Michelin stars */
  }

  header {
    background-color: transparent;
    position: fixed;
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center; /* This is correct for vertical centering */
    padding: 20px;
    z-index: 100;
    top: 0; /* Make sure it's positioned at the top */
    left: 0;
  }

  .h3 {
  text-align: center;
  color: red;
  }

  
  @keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
  }

  @font-face {
    font-family: 'Roboto';
    src: url('/assets/fonts/regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
  }
  
  @font-face {
    font-family: 'Roboto';
    src: url('/assets/fonts/medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
  }
  
  @font-face {
    font-family: 'Roboto';
    src: url('/assets/fonts/semibold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
  }
  
  @font-face {
    font-family: 'Roboto';
    src: url('/assets/fonts/bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
  }

