h1,
h2 {
  font-family: var(--display);
  font-weight: 800;
  letter-spacing: -0.042em;
}

h2 {
  font-size: clamp(1.95rem, 3.55vw, 3rem);
  line-height: 1.05;
  max-width: 21ch;
}

.kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  color: var(--gold);
  font-size: 0.78rem;
  letter-spacing: 0.06em;
}

.kicker::before {
  content: "";
  width: 22px;
  height: 1px;
  background: var(--gold);
  box-shadow: 0 0 8px rgba(240, 160, 75, 0.8);
}

.section-head {
  max-width: 660px;
  margin-bottom: clamp(36px, 5vw, 58px);
}

.section-head h2 {
  margin-bottom: 16px;
}

.section-head p {
  color: var(--text-2);
  font-size: 1.02rem;
  line-height: 1.72;
}

section {
  position: relative;
  padding: clamp(72px, 8.5vw, 118px) 0;
}

[data-reveal] {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.85s var(--ease), transform 0.85s var(--ease);
  transition-delay: calc(var(--d, 0) * 60ms);
}

[data-reveal].is-in {
  opacity: 1;
  transform: none;
}
