/* Vocabulary hub candidate: page-owned roadmap and compact practice layout. */
.vocab-opening .hub-opening-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 20px;
  margin-block: 20px 12px;
}

.vocab-opening .hub-opening-actions .text-link { font-weight: 600; }
.curriculum-jumps { display: flex; flex-wrap: wrap; gap: 12px 20px; margin-block: 16px 0; }
.vocabulary-example-section { padding-block: 44px; background: var(--cream); }
.vocabulary-example-section .vocab-example { max-width: 720px; }
.hub-details { margin-block-start: 18px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.hub-details summary { padding: 14px 0; color: var(--navy); font-weight: 700; cursor: pointer; }
.hub-details > *:not(summary) { margin-block-end: 16px; }

#curriculum .curriculum-group { break-inside: avoid; }

@media (min-width: 760px) {
  #curriculum .hub-shell { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 40px; }
  #curriculum .section__head,
  #curriculum .curriculum-parent { grid-column: 1 / -1; }
  #curriculum .curriculum-group { margin-block: 0; }
  #curriculum .curriculum-group#topics { grid-column: 1 / -1; }
  #curriculum .curriculum-group#topics .curriculum-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 28px; }
}
