.hero {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-block-size: calc(100svh - var(--header-h));
  background: var(--bg-hero);
  padding-block: clamp(72px, 9.03vw, 130px);
  text-align: center;
  transition: background var(--t-theme);
}

.hero__eyebrow { margin-block-end: 30px; }

.hero__name {
  font-size: var(--fs-hero-name);
  line-height: 1.02;
  letter-spacing: var(--ls-display);
}

.hero__role {
  font-size: var(--fs-hero-role);
  line-height: 1.1;
}

.hero__lede {
  max-width: 520px;
  margin: 26px auto 0;
}

.section-lede {
  max-width: 580px;
  margin-block-start: 26px;
}

.hero__cta {
  display: flex;
  justify-content: center;
  gap: 14px;
  margin-block-start: 40px;
}

.about__cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  max-width: 960px;
}

.about__cols p {
  font-size: var(--fs-article-body);
  line-height: 1.85;
  color: var(--ink-body);
}

.about__stack {
  display: flex;
  align-items: baseline;
  gap: 40px;
  margin-block-start: 64px;
  padding-block-start: 26px;
  border-block-start: 1px solid var(--line);
}

.about__stack .block-label { white-space: nowrap; }

.about__stack-list {
  font-size: var(--fs-body);
  line-height: 2.1;
  color: var(--muted);
}

.lessons__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.lesson-card { min-height: 250px; }

.lesson-card__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.lesson-card__cat {
  font-size: var(--fs-label-xs);
  font-weight: 600;
  letter-spacing: var(--ls-tag);
  text-transform: uppercase;
  color: var(--muted);
}

.lesson-card__index {
  font-family: var(--font-mono);
  font-size: var(--fs-mono-num);
  font-weight: 500;
  color: var(--dimmer);
}

.lesson-card__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-block-start: auto;
  padding-block-start: 20px;
}

.lessons__more {
  margin-block-start: 34px;
  text-align: center;
}

.toolkit__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.toolkit__more {
  margin-block-start: 34px;
  text-align: center;
}

.testimonials__slide > * { max-width: 860px; }

.testimonials__quote {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  font-size: var(--fs-feature-title);
  line-height: 1.55;
}

.testimonials__by {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-block-start: 26px;
}

.testimonials__name {
  display: block;
  font-size: var(--fs-body);
  font-weight: 500;
}

.testimonials__role {
  display: block;
  margin-block-start: 2px;
  font-size: var(--fs-body-sm);
  color: var(--muted);
}

@media (max-width: 1000px) {
  .lessons__grid,
  .toolkit__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 760px) {
  .about__cols,
  .lessons__grid,
  .toolkit__grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .about__stack {
    flex-direction: column;
    gap: 10px;
    margin-block-start: 28px;
    padding-block-start: 18px;
  }
}

@media (max-width: 520px) {
  .hero__cta { flex-direction: column; }
  .hero__cta .btn { width: 100%; }

}

.about__more {
  margin-block-start: 40px;
  text-align: center;
}
