
.module-hero { padding: 72px 0 42px; }
.module-hero h1 {
  margin: 10px 0 12px;
  font-size: clamp(2.6rem, 6vw, 5.4rem);
  line-height: .96;
  letter-spacing: -.055em;
}
.module-hero p { max-width: 760px; color: var(--muted); font-size: 1.05rem; }
.chapter-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
  padding-bottom: 80px;
}
.chapter-card {
  scroll-margin-top: calc(var(--header-h) + 24px);
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: var(--panel);
}
.chapter-card span {
  color: var(--accent);
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .08em;
}
.chapter-card h2 { margin: 7px 0 0; font-size: 1.05rem; }
.chapter-card p { margin: 9px 0 0; color: var(--muted); font-size: .88rem; }
.chapter-menu-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}
.chapter-menu-link {
  display: grid;
  grid-template-columns: 48px minmax(0,1fr);
  gap: 10px;
  align-items: center;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--panel);
  text-decoration: none;
}
.chapter-menu-link:hover,
.chapter-menu-link:focus-visible { border-color: var(--line-strong); background: var(--panel-solid); }
.chapter-menu-link span { color: var(--accent); font-size: .72rem; font-weight: 800; }
.chapter-menu-link strong { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: .84rem; }
@media (max-width: 760px) {
  .chapter-grid, .chapter-menu-grid { grid-template-columns: 1fr; }
  .module-hero { padding-top: 50px; }
}
