/* A quiet underline draws in as resource section titles enter the viewport. */
.bv-heading-reveal {
  position: relative;
  width: fit-content;
  max-width: 100%;
  padding-bottom: 0.32em;
}

.bv-heading-reveal__text {
  display: inline;
  color: #16845d;
  clip-path: inset(0 100% 0 0);
  -webkit-clip-path: inset(0 100% 0 0);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

.bv-heading-reveal.is-revealed .bv-heading-reveal__text {
  clip-path: inset(0 0 0 0);
  -webkit-clip-path: inset(0 0 0 0);
  transition: clip-path 1.15s cubic-bezier(0.2, 0.72, 0.24, 1);
  transition: -webkit-clip-path 1.15s cubic-bezier(0.2, 0.72, 0.24, 1), clip-path 1.15s cubic-bezier(0.2, 0.72, 0.24, 1);
}

.bv-heading-reveal::after {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  inset-block-end: 0.08em;
  width: 100%;
  height: 2px;
  opacity: 0;
  transform: scaleX(0);
  transform-origin: left center;
  background: linear-gradient(90deg, #6f9f3d 0%, #a7c98d 58%, rgba(167, 201, 141, 0.12) 100%);
  transition: transform 820ms cubic-bezier(0.2, 0.72, 0.24, 1), opacity 260ms ease;
  pointer-events: none;
}

.bv-heading-reveal.is-revealed::after {
  opacity: 1;
  transform: scaleX(1);
}

@media (prefers-reduced-motion: reduce) {
  .bv-heading-reveal__text {
    color: #16845d;
    clip-path: none;
    -webkit-clip-path: none;
  }

  .bv-heading-reveal::after {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .bv-heading-reveal.is-revealed .bv-heading-reveal__text {
    transition: none;
  }
}
