/* ─── Shared Section Styles & Reveal Animation ─── */

section {
  padding: var(--space-18) var(--space-8);
}

.section-overline {
  font-family: var(--font-body);
  font-size: 0.6rem;
  font-weight: 400;
  letter-spacing: 0.4em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 0.75rem;
}

.section-heading {
  font-family: var(--font-display);
  font-size: clamp(2rem, 4vw, 3.5rem);
  font-weight: 300;
  line-height: 1.2;
  margin-bottom: 3rem;
  color: var(--charcoal);
}

.section-divider {
  width: 40px;
  height: 1px;
  background: var(--gold);
  margin: 0 auto 3rem;
  position: relative;
}

.section-divider::after {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--gold);
  position: absolute;
  top: -2px;
  left: 50%;
  transform: translateX(-50%);
}

/* ─── Reveal Animation ─── */

.reveal {
  opacity: 0;
  transform: translateY(40px);
  transition: all 0.9s cubic-bezier(0.22, 1, 0.36, 1);
}

.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

.reveal-delay-1 {
  transition-delay: 0.1s;
}
.reveal-delay-2 {
  transition-delay: 0.2s;
}
.reveal-delay-3 {
  transition-delay: 0.3s;
}
.reveal-delay-4 {
  transition-delay: 0.4s;
}
