.project-hero {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 20rem;

  .project-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgb(from var(--color-black) r g b / 0.25);
  }

  .container {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  @media (width >= 768px) {
    min-height: 36rem;
  }
}

.project-swiper {
  .swiper-slide {
    aspect-ratio: 4/3;
    img {
      position: absolute;
      top: 50%;
      left: 50%;
      translate: -50% -50%;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
  }
  .swiper-pagination {
    .swiper-pagination-bullet {
      width: 1rem;
      height: 1rem;
      background: transparent;
      border: 1px solid var(--color-white);
      opacity: 1;
      &.swiper-pagination-bullet-active {
        background: var(--color-white);
      }
    }
  }
  @media (width >= 768px) {
    .swiper-slide {
      height: 36rem;
    }
  }
}

.project-banner {
  position: relative;
  min-height: 20rem;
  img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  @media (width >= 768px) {
    height: 36rem;
  }
}

.words-carousel {
  --words-spacing: 5ch;
  display: flex;
  gap: var(--words-spacing);
  overflow: hidden;

  > * {
    flex: 0 0 100%;
  }

  .words {
    display: inline-flex;
    justify-content: space-around;
    gap: var(--words-spacing);
    will-change: transform;
    animation: words-carousel-scrolling 15s linear infinite;
  }

  .word {
    /* width: 100%; */
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-size: var(--text-5xl);
    font-weight: 500;
    color: var(--color-darkgray);
  }

  /* &:hover {
    .words {
      animation-play-state: paused;
    }
  } */

  @media (width >= 768px) {
    .word {
      font-size: var(--text-6xl);
    }
  }
  @media (width >= 1200px) {
    .word {
      font-size: var(--text-7xl);
    }
  }
}

@keyframes words-carousel-scrolling {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

.project-locations {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  li {
    display: flex;
    align-items: center;
    gap: 1ch;
    &:before {
      content: attr(data-number);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 2em;
      height: 2em;
      color: var(--color-black);
      background-color: var(--color-orange);
      border-radius: 50em;
    }
  }
}

.features-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  list-style: disc;
  text-wrap: pretty;
}