.custom-title {
  position: relative;
  display: inline-block;
  z-index: 1;
  width: 100%;
  /*display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;*/
}

.custom-title span.cursive {
  font-family: 'Pacifico', cursive;
}

.custom-title span.svg{
  overflow: visible;
  text-align: inherit;
  display: inline-block;
  position: relative;
  font-size: inherit;
}

.custom-title span.svg svg {
  left: 50%;
  overflow: visible;
  position: absolute;
  top: 100%;
  transform: translate(-50%, -50%);
  width: calc(100% + 20px);
  z-index: -1;
  clip-path: inset(0 100% 0 0);
}

.custom-title span.highlight {
  display: inline-block;
  transform: rotate(var(--highlight-rotation));
  padding: 0rem 0.5rem;
  width: auto;
  text-align: center; /* Center text */
  position: relative; /* Position text */
  z-index: 1;
}

.custom-title span.highlight:before {
  content: "";
  position: absolute;
  width: 0;
  height: 100%;
  width: 100%;
  left: 0;
  right: 100%;
  bottom: 0;
  background-color : var(--highlight-bg-color);
  z-index: -1;
  transition: .5s width ease;
  transition-delay: var(--animation-delay); 
}

.custom-title span.svg.animate-svg svg {
  animation: svgReveal .3s ease forwards;
  animation-delay: .3s;
}

@keyframes svgReveal {
  0% { clip-path: inset(0 100% 0 0); }
  100% { clip-path: inset(0); }
}

.custom-title span.svg path{
  stroke-width: 15;
  stroke-linecap: round;
  stroke-linejoin: round;

  stroke-dasharray: 400;
  stroke-dashoffset: 400;
}

@keyframes drawLine {
  to {
    stroke-dashoffset: 0;
  }
}