.worksSection__title {
  font-size: 18px;
  font-weight: 700;
}

.worksSection__title::before {
  background: var(--c-primary);
  content: "";
  display: block;
  height: 2px;
  margin-bottom: 10px;
  width: 50px;
}

.worksList {
  column-gap: 20px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  padding-block: 56px 40px;
  row-gap: 48px;
}

@media screen and (max-width: 1080px) {
  .worksList {
    grid-template-columns: repeat(auto-fit, minmax(min(250px, 100%), 1fr));
  }
}

@media screen and (max-width: 576px) {
  .worksList {
    grid-template-columns: 1fr;
  }
}

.worksList__item {
  display: grid;
  grid-row: span 3;
  grid-template-rows: subgrid;
  overflow: hidden;
  row-gap: 16px;
  width: min(100%, 346px);
}

@media screen and (max-width: 576px) {
  .worksList__item {
    row-gap: 16px;
    width: 100%;
  }
}

@media (any-hover: hover) {
  .worksList__item:hover .worksList__title,
  .worksList__item:hover .worksMeta__categoryParent,
  .worksList__item:hover .worksMeta__categoryChild {
    color: var(--c-primary);
    transition: color 0.2s;
  }
}

.worksList__thumbnail img {
  aspect-ratio: 4 / 3;
  clip-path: polygon(
  15.5% 0,
  70% 0%,
  100% 0,
  100% 70%,
  100% 100%,
  0 100%,
  0% 70%,
  0 17.7%
  );
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s;
  width: min(100%, 346px);
}

@media screen and (max-width: 576px) {
  .worksList__thumbnail img {
    width: 100%;
  }
}

.worksList__noImage {
  aspect-ratio: 4 / 3;
  border: 1px solid;
  color: var(--c-black);
  display: grid;
  height: 100%;
  place-items: center;
  width: 100%;
}

.worksMeta__category {
  align-items: center;
  column-gap: 10px;
  display: flex;
  font-size: 12px;
  letter-spacing: 0.1em;
}

.worksMeta__categoryParent {
  background: var(--c-gray-100);
  border-radius: 100px;
  color: var(--c-gray-500);
  padding: 6px 16px;
}

.worksMeta__categoryChild {
  align-items: center;
  color: var(--c-black);
  display: flex;
}

.worksMeta__categoryChild::before {
  background: var(--c-border-gray);
  content: "";
  display: block;
  height: 12px;
  margin-right: 10px;
  width: 1px;
}

.worksList__title {
  -webkit-box-orient: vertical;
  color: var(--c-black);
  display: -webkit-box;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.1em;
  -webkit-line-clamp: 2;
          line-clamp: 2;
  line-height: 1.8;
  margin-top: -6px;
  overflow: hidden;
  padding: 0 16px;
  text-overflow: ellipsis;
  transition: color 0.2s;
}

@media screen and (max-width: 576px) {
  .worksList__title {
    font-size: 15px;
    margin-top: -12px;
    padding: 0 8px;
  }
}
