.banner-v245__item {
  position: relative;
}

.banner-v245__img-link {
  display: grid;
  height: 100%;
}

.banner-v245__content {
  position: absolute;
  bottom: 4rem;
  left: 4rem;
  z-index: 2;
}

.banner-v245__title {
  color: color-mix(in srgb, rgba(var(--color-background)) calc(1 * 100%), transparent);
  font-size: clamp(2.2rem, calc(0.25vw + 2.1rem), 2.4rem);
  font-weight: 400;
}
.banner-v245__title a {
  color: color-mix(in srgb, rgba(var(--color-foreground)) calc(1 * 100%), transparent);
  transition: all 0.3s ease;
  padding: 0.8rem 0;
  position: relative;
}

.banner-v245__title:hover a {
  color: color-mix(in srgb, rgba(var(--color-accent)) calc(1 * 100%), transparent);
}
.banner-v245__title:hover .banner-v245__title-link::after {
  background-color: color-mix(in srgb, rgba(var(--color-accent)) calc(1 * 100%), transparent);
}

.banner-v245__title-link::after {
  content: "";
  position: absolute;
  display: block;
  width: 50%;
  bottom: 0;
  height: 0.1rem;
  background-color: color-mix(in srgb, rgba(var(--color-foreground)) calc(1 * 100%), transparent);
  transition: all 0.3s ease;
}