/* === Global Styles === */
.cta-img-black {
  display: none;
}
.cta-button:hover .cta-img-white {
  display: none;
}
.cta-button:hover .cta-img-black {
  display: inline;
}

.font-neuehaas {
  font-family: 'Neue Haas Grotesk Display Pro', sans-serif;
}

/* Nav underline animation */
.nav-link {
  position: relative;
  display: inline-block;
  padding-bottom: 2px;
  transition: color 0.3s ease;
}

.nav-link::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #ef4444;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
}

.nav-link:hover::after,
.nav-link.active::after {
  transform: scaleX(1);
}

.icon-draw path {
  stroke-dasharray: 100;
  stroke-dashoffset: 0;
  transition: stroke-dashoffset 0.8s ease;
}

.icon-draw {
  transition: color 0.3s ease; /* smooth color transition */
}

@keyframes draw-path {
  0% {
    stroke-dashoffset: 100;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
