/* ═══════════════════════════════════════════
   СПІЛЬНІ СТИЛІ СЕКЦІЙ
═══════════════════════════════════════════ */
.wrap { padding: 110px 56px; }

.tag {
  display: flex; align-items: center; gap: 14px;
  font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: .32em; text-transform: uppercase;
  color: var(--moss); margin-bottom: 18px;
}
.tag::before { content:''; width:26px; height:1px; background: var(--moss); flex-shrink:0; }

.tag-light { color: var(--sage); }
.tag-light::before { background: var(--sage); }

h2.display {
  font-family: var(--serif);
  font-size: clamp(34px, 3.8vw, 58px);
  font-weight: 500; line-height: 1.12; color: var(--soil);
}
h2.display em { font-style: italic; color: var(--moss); }
h2.display-light { color: var(--cream); }
h2.display-light em { color: var(--sage); }

/* reveal animation */
.rv {
  opacity: 0; transform: translateY(32px);
  transition: opacity .85s ease, transform .85s ease;
}
.rv.show { opacity: 1; transform: translateY(0); }
.rv.d1 { transition-delay: .1s; }
.rv.d2 { transition-delay: .2s; }
.rv.d3 { transition-delay: .3s; }
.rv.d4 { transition-delay: .42s; }
