html {
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *, *::before, *::after {
    animation: none !important;
    transition: none !important;
  }
}

#site-header.is-solid {
  background: rgba(22, 40, 33, 0.94);
  backdrop-filter: blur(16px);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.06);
}

.nav-link {
  position: relative;
}

.nav-link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.4rem;
  height: 1px;
  background: #c4a36a;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
}

.nav-link:hover::after,
.nav-link.is-active::after {
  transform: scaleX(1);
}

.img-zoom {
  overflow: hidden;
}

.img-zoom img {
  transition: transform 0.7s ease;
}

.img-zoom:hover img {
  transform: scale(1.06);
}

dialog#lightbox {
  border: 0;
  padding: 0;
  background: transparent;
  max-width: min(1100px, 94vw);
  width: 94vw;
}

dialog#lightbox::backdrop {
  background: rgba(12, 18, 15, 0.88);
}

dialog#lightbox img {
  width: 100%;
  max-height: 82vh;
  object-fit: contain;
  background: #111;
}
