.trilhas-section--hero,
.trilhas-section--parchment {
  background: var(--trilhas-color-parchment);
}

.trilhas-section--white {
  background: #fff;
}

.trilhas-section--math {
  background: var(--trilhas-color-math-soft);
}

.trilhas-section--computing {
  background: var(--trilhas-color-computing-soft);
}

.trilhas-section--hero {
  overflow: clip;
  padding-top: clamp(4rem, 8vw, 7rem);
}

.trilhas-hero {
  display: grid;
  min-height: min(48rem, calc(100vh - 4.75rem));
  align-items: center;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  gap: clamp(2rem, 6vw, 6rem);
}

.trilhas-hero__title {
  max-width: 13ch;
  margin: 0 0 var(--trilhas-space-6);
  font-size: var(--trilhas-text-4xl);
  font-weight: 800;
  letter-spacing: -0.025em;
}

.trilhas-hero__lead {
  max-width: 42rem;
  margin-bottom: var(--trilhas-space-8);
  color: var(--trilhas-text-secondary);
  font-size: var(--trilhas-text-lg);
}

.trilhas-hero__note {
  margin-top: var(--trilhas-space-5);
  color: var(--trilhas-text-muted);
  font-size: var(--trilhas-text-sm);
}

.trilhas-hero__visual img {
  width: 100%;
  filter: drop-shadow(0 20px 28px rgb(37 50 56 / 0.12));
}

.trilhas-axis-grid {
  display: grid;
  align-items: stretch;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: var(--trilhas-space-6);
}

.trilhas-axis-card {
  display: flex;
  min-height: 31rem;
  flex-direction: column;
  padding: clamp(1.75rem, 4vw, 2.6rem);
  border: 1px solid rgb(37 50 56 / 0.12);
  border-radius: var(--trilhas-radius-xl);
  box-shadow: var(--trilhas-shadow-md);
}

.trilhas-axis-card--math {
  background:
    radial-gradient(circle at 90% 10%, rgb(46 125 91 / 0.14), transparent 34%),
    var(--trilhas-color-math-soft);
}

.trilhas-axis-card--computing {
  background:
    radial-gradient(circle at 90% 10%, rgb(47 95 167 / 0.14), transparent 34%),
    var(--trilhas-color-computing-soft);
}

.trilhas-axis-card--math .trilhas-card__eyebrow {
  color: var(--trilhas-color-math);
}

.trilhas-axis-card--computing .trilhas-card__eyebrow {
  color: var(--trilhas-color-computing);
}

.trilhas-axis-card__icon {
  width: 4rem;
  height: 4rem;
  margin-bottom: var(--trilhas-space-6);
}

.trilhas-axis-bridge {
  display: grid;
  width: 8.5rem;
  align-content: center;
  justify-items: center;
  gap: var(--trilhas-space-3);
  color: var(--trilhas-text-muted);
  font-size: var(--trilhas-text-xs);
  font-weight: 600;
  text-align: center;
}

.trilhas-axis-bridge img {
  width: 5.5rem;
}

.trilhas-final-cta {
  color: var(--trilhas-text-on-dark);
  background:
    radial-gradient(circle at 80% 20%, rgb(47 95 167 / 0.28), transparent 30%),
    var(--trilhas-surface-dark);
}

.trilhas-final-cta .trilhas-section__eyebrow,
.trilhas-final-cta .trilhas-section__title,
.trilhas-final-cta .trilhas-section__lead {
  color: inherit;
}

.trilhas-final-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--trilhas-space-10);
}

.trilhas-footer {
  color: var(--trilhas-text-on-dark-muted);
  background: var(--trilhas-surface-footer);
}

.trilhas-footer__grid {
  display: grid;
  padding-block: var(--trilhas-space-20);
  grid-template-columns: 1.3fr repeat(3, 1fr);
  gap: var(--trilhas-space-10);
}

.trilhas-brand--footer {
  color: #fff;
}

.trilhas-brand--footer .trilhas-brand__text strong,
.trilhas-brand--footer .trilhas-brand__text span {
  color: #fff;
}

.trilhas-footer__brand p {
  max-width: 22rem;
}

.trilhas-footer__signature {
  color: #fff;
  font-weight: 600;
}

.trilhas-footer__heading {
  margin: 0 0 var(--trilhas-space-4);
  color: #fff;
  font-size: 1rem;
  font-weight: 800;
}

.trilhas-footer ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.trilhas-footer li + li {
  margin-top: var(--trilhas-space-3);
}

.trilhas-footer a {
  color: var(--trilhas-text-on-dark-muted);
}

.trilhas-footer a:hover {
  color: #fff;
}

.trilhas-footer li span {
  color: rgb(220 229 225 / 0.62);
  font-size: 0.95rem;
}

.trilhas-footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--trilhas-space-5);
  padding-block: var(--trilhas-space-5);
  border-top: 1px solid rgb(255 255 255 / 0.12);
  font-size: var(--trilhas-text-sm);
}

.trilhas-footer__closing {
  padding: var(--trilhas-space-5);
  color: #fff;
  background: rgb(0 0 0 / 0.15);
  font-family: var(--trilhas-font-heading);
  font-weight: 700;
  text-align: center;
}

@media (max-width: 999px) {
  .trilhas-hero {
    min-height: auto;
    grid-template-columns: 1fr;
  }

  .trilhas-hero__content {
    max-width: 48rem;
  }

  .trilhas-hero__visual {
    max-width: 48rem;
    margin-inline: auto;
  }

  .trilhas-axis-grid {
    grid-template-columns: 1fr;
  }

  .trilhas-axis-bridge {
    width: auto;
    grid-template-columns: auto 1fr;
    justify-self: center;
    text-align: left;
  }

  .trilhas-axis-bridge img {
    width: 4.25rem;
  }

  .trilhas-footer__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767px) {
  .trilhas-axis-card {
    min-height: 0;
  }

  .trilhas-final-cta__inner {
    align-items: stretch;
    flex-direction: column;
  }

  .trilhas-footer__grid {
    grid-template-columns: 1fr;
  }

  .trilhas-footer__bottom {
    align-items: flex-start;
    flex-direction: column;
  }
}
