.overlay {
  /* Initial State: Hidden and shifted up */
  opacity: 0;
  visibility: hidden;
  transform: translateY(-20px);
  transition: 
    opacity 0.4s ease,
    transform 0.5s cubic-bezier(0.16, 1, 0.3, 1), /* Smooth deceleration */
    visibility 0.4s;
  z-index: 999;
  position: sticky;
}

.overlay.open {
  /* Active State: Visible and in place */
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.overlay-nav {
  position: absolute;
  display: flex;
  flex-direction: column;
  height: 100dvh;
  width: 100vw;
  align-items: center;
  justify-content: center;
  background-color: #f9f9f9;
}


.overlay-nav a {
  font-size: var(--fs-xl);
  color: var(--color-dark-blue);
}

.overlay-nav a:hover {
  color: var(--color-red);
}

.close-btn {
  position: absolute;
  /* margin-left: 0.4rem; */
  display: flex;
  width: 3rem;
  height: 3rem;
  right: 0;
  margin: 0.6rem;
  /* flex-direction: column; */
  justify-content: center;
  align-items: center;
  gap: 10px;
  aspect-ratio: 1/1;
  border-radius: 6px;
  background: var(--color-teal);
  box-shadow: 1px 1px 7px 0 rgba(0, 0, 0, 0.25);  
  z-index: 1;
}

.close-btn svg {
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1); /* Matches your overlay timing */
  will-change: transform;
}

/* 2. Rotate the X when the 'closed' class is toggled */
.close-btn.closed svg {
  transform: rotate(180deg);
}

@media (min-width:1000px) {
  .close-btn {
    display: none;
  }
}