.nav {
  display: flex;
  align-items: center;
  gap: 32px;
}

.nav .nav-btn:nth-child(1) img { width: 8vw;  margin-top: -20px; }
.nav .nav-btn:nth-child(2) img { width: 9vw;  margin-top: -15px; }
.nav .nav-btn:nth-child(3) img { width: 7vw;  margin-top: -30px; }

.nav a,
.nav button {
  text-decoration: none;
  color: #6E2A5E;
  font-family: "Vinnytsya", sans-serif;
  font-size: 1.1vw;
}

.topbar a {
  text-decoration: none;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.nav-btn {
  display: block;
  text-decoration: none;
}

.nav-btn img {
  display: block;
  width: 11.1vw;
  height: auto;
  transition: transform 0.2s ease;
}

.nav-btn:hover img { transform: scale(1.05); }

.gallery-topbar {
  align-items: flex-start;
  padding-right: 3%;
}

.gallery-topbar .logo {
  position: relative;
  top: 0.8vw;
}

.gallery-topbar .nav {
  margin-top: 1%;
}

.dash-line {
  width: 100%;
  height: 14px;
  background-image: url("images/dash.svg");
  background-repeat: repeat-x;
  background-size: auto 14px;
  background-position: center;
  margin-top: -20px;
}

.gallery-scroll {
  width: 100%;
  height: calc(100vh - 100px);
  overflow-x: auto;
  overflow-y: hidden;
}

.gallery {
  position: relative;
  height: 100%;
  aspect-ratio: 36/10;
}

.art {
  position: absolute;
  width: 10%;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: transform 0.5s ease, opacity 1.2s ease;
  opacity: 0;
}

.art--visible {
  opacity: 1;
}

.art img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.art:hover {
  transform: scale(1.1);
  z-index: 10;
}

.logo--mobile { display: none; }

/* ── Tablet: Gallery topbar ──────────────────────────── */
@media (min-width: 769px) and (max-width: 1024px) {
  .topbar { padding: 4% 2% 0%; }
  .logo   { width: 480px; }
  .nav { display: none; }
  .gallery-scroll { height: calc(100vh - 160px); }
}

/* ── Phone: Gallery ──────────────────────────────────── */
@media (max-width: 768px) {
  .topbar {
    flex-direction: column;
    align-items: center;
    padding: 4vw 4vw 2vw;
    gap: 0;
  }

  .logo--desktop { display: none; }
  .logo--mobile {
    display: block;
    width: 85vw;
    margin-top: 0;
  }
  .logo {
    width: 85vw;
    margin-top: 0;
  }

  .nav { display: none; }
  .dash-line { display: none; }

  .gallery-scroll {
    height: auto;
    overflow-x: hidden;
    overflow-y: visible;
  }

  .gallery {
    position: static;
    height: auto;
    aspect-ratio: unset;
    columns: 2;
    column-gap: 3vw;
    padding: 5vw 4vw;
  }

  .art {
    position: static !important;
    width: 100% !important;
    top: unset !important;
    left: unset !important;
    display: block;
    break-inside: avoid;
    margin-bottom: 4vw;
  }

  .art:nth-child(3n+1) { margin-top: 7vw; }
  .art:nth-child(5n+2) { margin-top: 4vw; }
  .art:nth-child(7n)   { margin-top: 10vw; }
  .art:nth-child(4n+3) { margin-top: 2vw; }
}
