.hub-shell { width: min(980px, calc(100% - 40px)); margin: 0 auto; padding: 58px 0 96px; }
.hub-shell .breadcrumb { margin-bottom: 30px; }
.reading-path { display: grid; gap: 14px; margin: 32px 0 46px; counter-reset: path; }
.path-card {
  position: relative;
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  gap: 16px;
  padding: 22px;
  border: 1px solid rgba(10,10,10,.09);
  border-radius: 18px;
  background: #fff;
  text-decoration: none;
  transition: transform .2s ease, box-shadow .2s ease;
  counter-increment: path;
}
.path-card::before {
  content: counter(path);
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #19c785;
  color: #07120d;
  font-weight: 850;
}
.path-card:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(10,10,10,.07); }
.path-card strong { display: block; margin-bottom: 6px; font-size: 1.12rem; letter-spacing: -.02em; }
.path-card span { color: #5e5e5e; font-size: .92rem; line-height: 1.5; }
.hub-disclaimer { margin: 38px 0; padding: 24px 26px; border-radius: 18px; background: #ffcf3f; }
.hub-disclaimer strong { display: block; margin-bottom: 7px; }
.hub-next { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 38px; }
.hub-next a { padding: 20px; border-radius: 16px; background: #0d1510; color: #fff; text-decoration: none; }
.hub-next small { display: block; margin-bottom: 6px; color: #19c785; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
@media (max-width: 620px) {
  .path-card { grid-template-columns: 44px minmax(0, 1fr); padding: 18px; }
  .path-card::before { width: 38px; height: 38px; }
  .hub-next { grid-template-columns: 1fr; }
}
