html { scroll-behavior: smooth; }

body {
  font-family: var(--font-body);
  background-color: #241A10;
  color: #F0E8D8;
}

/* ── Ornament divider ── */
.ornament {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: center;
}
.ornament::before,
.ornament::after {
  content: '';
  flex: 1;
  max-width: 80px;
  height: 1px;
  background: currentColor;
  opacity: 0.35;
}

/* ── Fade-in on scroll ── */
.fade-up {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.65s ease, transform 0.65s ease;
}
.fade-up.visible {
  opacity: 1;
  transform: translateY(0);
}
.fade-up-delay-1 { transition-delay: 0.1s; }
.fade-up-delay-2 { transition-delay: 0.2s; }
.fade-up-delay-3 { transition-delay: 0.3s; }
.fade-up-delay-4 { transition-delay: 0.4s; }

/* ── Feature card photo ── */
.feature-card {
  position: relative;
  overflow: hidden;
  border-radius: 1.25rem;
}
.feature-card-inner {
  position: relative;
  z-index: 1;
}
