.editorial-spacing {
  letter-spacing: -0.01em;
}

/* Section header line with label */
.section-label {
  font-family: "Albert Sans", sans-serif;
  font-size: 0.75rem;
  color: #A68A72; /* Taupe */
  text-transform: uppercase;
  letter-spacing: 0.22em;
  font-weight: 500;
  background-color: transparent;
  position: relative;
  z-index: 10;
}

.section-header-wrap {
  position: relative;
  display: flex;
  align-items: center;
}

.section-header-wrap::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 1px;
  background-color: rgba(156, 139, 122, 0.25); /* Mushroom/25 */
  z-index: 1;
}

.section-label-bg {
  background-color: var(--section-bg, #F7F3EF);
  padding: 0 1.5rem;
  z-index: 2;
}

.dark .section-label-bg {
  --section-bg: #1F1F1F;
}

/* Slider (dynamic image count) */
.slider-container {
  position: relative;
  overflow: hidden;
}

.slider-content {
  display: flex;
  transition: transform 0.8s cubic-bezier(0.23, 1, 0.32, 1);
  height: 100%;
  width: 100%;
}

.slide {
  width: 100%;
  flex: 0 0 100%;
}

/* Nav button fade-in on hover */
.nav-button {
  opacity: 0;
  transition: opacity 0.4s ease, background-color 0.3s ease, transform 0.3s ease;
}

.slider-container:hover .nav-button {
  opacity: 1;
}

.nav-button:hover {
  transform: scale(1.1);
}

/* Buy Now link */
.buy-now-link {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.75rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  border-bottom: 1px solid rgba(156, 139, 122, 0.35);
  padding-bottom: 0.25rem;
  transition: all 0.3s ease;
  color: #3E342C; /* Espresso */
}

.dark .buy-now-link {
  color: #F7F3EF; /* Ivory */
}

.buy-now-link:hover {
  border-color: #A68A72; /* Taupe */
  transform: translateX(0.25rem);
  color: #3E342C; /* Espresso: hover feedback via the Taupe border-color, not on small link text (fails AA on Ivory) */
}

.dark .buy-now-link:hover {
  color: #F7F3EF; /* Ivory */
}