.trilhas-cycle-intro {
  max-width: 58rem;
  margin-inline: auto;
}

.trilhas-cycle {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: var(--trilhas-space-6);
  margin: clamp(3rem, 7vw, 5rem) 0 0;
  padding: 0;
  list-style: none;
}

.trilhas-cycle__item {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 19rem;
  grid-column: span 2;
  flex-direction: column;
  padding: clamp(1.35rem, 2.5vw, 1.8rem);
  border: 1px solid rgb(37 50 56 / 0.13);
  border-radius: var(--trilhas-radius-lg);
  background: var(--trilhas-surface-card);
  box-shadow: var(--trilhas-shadow-sm);
  transition:
    transform var(--trilhas-motion-normal) ease,
    box-shadow var(--trilhas-motion-normal) ease,
    border-color var(--trilhas-motion-normal) ease;
}

.trilhas-cycle__item:nth-child(5) {
  grid-column: 2 / span 2;
}

.trilhas-cycle__item:nth-child(6) {
  grid-column: 4 / span 2;
}

.trilhas-cycle__item:nth-child(7) {
  grid-column: 6 / span 2;
}

.trilhas-cycle__item:hover {
  transform: translateY(-4px);
  border-color: rgb(31 90 69 / 0.32);
  box-shadow: var(--trilhas-shadow-md);
}

.trilhas-cycle__marker {
  display: flex;
  width: 3.5rem;
  height: 3.5rem;
  align-items: center;
  justify-content: center;
  margin-bottom: var(--trilhas-space-6);
  border: 0.35rem solid rgb(31 90 69 / 0.13);
  border-radius: 50%;
  color: white;
  background: var(--trilhas-color-ecosystem);
  box-shadow: 0 0 0 1px rgb(31 90 69 / 0.16);
  font-size: var(--trilhas-text-sm);
  font-weight: 900;
  letter-spacing: 0.04em;
}

.trilhas-cycle__eyebrow {
  margin: 0 0 var(--trilhas-space-2);
  color: var(--trilhas-color-ecosystem);
  font-size: var(--trilhas-text-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.trilhas-cycle__title {
  margin: 0 0 var(--trilhas-space-4);
  font-size: var(--trilhas-text-xl);
  font-weight: 800;
}

.trilhas-cycle__description {
  margin: 0;
  color: var(--trilhas-text-secondary);
  font-size: var(--trilhas-text-sm);
}

.trilhas-cycle__closing {
  display: flex;
  max-width: 52rem;
  align-items: center;
  justify-content: center;
  gap: var(--trilhas-space-4);
  margin: clamp(2.5rem, 6vw, 4rem) auto 0;
  padding: var(--trilhas-space-5) var(--trilhas-space-6);
  border: 1px solid rgb(31 90 69 / 0.17);
  border-radius: var(--trilhas-radius-lg);
  color: var(--trilhas-color-ecosystem);
  background: rgb(31 90 69 / 0.07);
  font-weight: 800;
  text-align: center;
}

.trilhas-cycle__closing::before {
  content: "↻";
  flex: 0 0 auto;
  font-size: 1.8rem;
  line-height: 1;
}

@media (max-width: 1099px) {
  .trilhas-cycle {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .trilhas-cycle__item,
  .trilhas-cycle__item:nth-child(5),
  .trilhas-cycle__item:nth-child(6),
  .trilhas-cycle__item:nth-child(7) {
    grid-column: auto;
  }

  .trilhas-cycle__item:last-child {
    grid-column: 1 / -1;
    width: calc(50% - var(--trilhas-space-3));
    justify-self: center;
  }
}

@media (max-width: 639px) {
  .trilhas-cycle {
    grid-template-columns: 1fr;
  }

  .trilhas-cycle__item,
  .trilhas-cycle__item:last-child {
    width: auto;
    min-height: 0;
    grid-column: auto;
  }

  .trilhas-cycle__closing {
    align-items: flex-start;
    text-align: left;
  }
}
