/* Collection hubs only. The approved article/home stylesheet is unchanged. */
.lw-hub-page .lw-hub { padding-block: 30px 80px; }
.lw-hub-page .lw-hub-crumbs { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 32px; color: var(--ghost-muted); font-size: .84rem; }
.lw-hub-page .lw-hub-crumbs a { text-decoration: underline; text-underline-offset: 4px; }
.lw-hub-page .lw-hub-intro { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(0,.8fr); align-items: start; gap: 50px; margin-bottom: 38px; }
.lw-hub-page .lw-hub-intro > * { min-width: 0; }
.lw-hub-page .lw-hub h1 { margin: 0 0 24px; max-width: 18ch; color: var(--ghost-ink); font-size: clamp(2.6rem,4.8vw,4.5rem); font-weight: 800; line-height: 1.07; letter-spacing: -.025em; overflow-wrap: break-word; }
.lw-hub-page .lw-hub-intro header > p { max-width: 61ch; margin: 0 0 17px; color: var(--ghost-muted); font-size: 1.08rem; line-height: 1.65; }
.lw-hub-page .lw-hub a:not(.lw-hub-starter a):not(.lw-hub-card a):not(.lw-hub-next a):not(.lw-hub-jumps a) { text-decoration: underline; text-decoration-color: var(--ghost-accent); text-underline-offset: 4px; }
.lw-hub-page .lw-hub-intro .lw-hub-byline { margin-top: 25px; font-size: .86rem; color: var(--ghost-muted); }
.lw-hub-page .lw-hub-starter { border: 1px solid var(--ghost-line); background: #202927; }
.lw-hub-page .lw-hub-starter a { display: block; }
.lw-hub-page .lw-hub-starter img { width: 100%; height: auto; aspect-ratio: 3/2; object-fit: contain; background: #111516; }
.lw-hub-page .lw-hub-starter a > div { padding: 19px 22px 23px; }
.lw-hub-page .lw-hub-starter span { display: block; margin-bottom: 8px; color: var(--ghost-accent); font-size: .84rem; font-weight: 650; }
.lw-hub-page .lw-hub-starter h2 { margin: 0 0 12px; font-size: 1.35rem; line-height: 1.24; }
.lw-hub-page .lw-hub-starter p { margin: 0; color: var(--ghost-muted); font-size: .92rem; line-height: 1.55; }
.lw-hub-page .lw-hub-jumps { display: flex; flex-wrap: wrap; gap: 8px; padding: 18px 0; border-block: 1px solid var(--ghost-line); }
.lw-hub-page .lw-hub-jumps a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 16px; border: 1px solid #56635d; color: var(--ghost-ink); font-size: .93rem; }
.lw-hub-page .lw-hub-jumps a:hover { background: var(--ghost-accent); color: #111516; border-color: var(--ghost-accent); }
.lw-hub-page .lw-hub-section { padding-top: 54px; scroll-margin-top: 24px; }
.lw-hub-page .lw-hub-section h2 { max-width: 32ch; margin: 0 0 18px; font-size: clamp(1.85rem,3vw,2.5rem); line-height: 1.16; letter-spacing: -.015em; }
.lw-hub-page .lw-hub-section > p, .lw-hub-page .lw-hub-section-head > p { max-width: 74ch; margin: 0 0 24px; color: var(--ghost-muted); }
.lw-hub-page .lw-hub-path { list-style: none; counter-reset: hub-step; padding: 0; margin: 28px 0 0; }
.lw-hub-page .lw-hub-path li { position: relative; counter-increment: hub-step; padding: 22px 24px 22px 66px; border-top: 1px solid var(--ghost-line); }
.lw-hub-page .lw-hub-path li::before { content: counter(hub-step); position: absolute; left: 6px; top: 22px; color: var(--ghost-accent); font-size: 1.35rem; font-weight: 750; }
.lw-hub-page .lw-hub-path li:last-child { border-bottom: 1px solid var(--ghost-line); }
.lw-hub-page .lw-hub-path h3, .lw-hub-page .lw-hub-decisions h3 { margin: 0 0 10px; color: var(--ghost-ink); font-size: 1.2rem; line-height: 1.3; }
.lw-hub-page .lw-hub-path p, .lw-hub-page .lw-hub-decisions p { max-width: 72ch; margin: 0; color: var(--ghost-muted); }
.lw-hub-page .lw-hub-decisions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 40px; margin-top: 28px; }
.lw-hub-page .lw-hub-decisions > div { min-width: 0; padding: 25px 0; border-top: 1px solid var(--ghost-line); }
.lw-hub-page .lw-hub-note { margin-top: 26px; padding: 20px 24px; border-left: 3px solid var(--ghost-accent); background: #202927; }
.lw-hub-page .lw-hub-note p { max-width: 74ch; margin: 0; color: var(--ghost-muted); }
.lw-hub-page .lw-hub-note strong { color: var(--ghost-ink); }
.lw-hub-page .lw-hub-checks { max-width: 72ch; margin: 0; padding-left: 24px; color: var(--ghost-muted); }
.lw-hub-page .lw-hub-checks li { padding-left: 6px; margin-block: 12px; }
.lw-hub-page .lw-hub-symptom-nav { padding: 22px 26px; border: 1px solid var(--ghost-line); background: #202927; }
.lw-hub-page .lw-hub-symptom-nav h2 { margin: 0 0 16px; font-size: 1.4rem; line-height: 1.3; }
.lw-hub-page .lw-hub-symptom-nav ul { list-style: none; padding: 0; margin: 0; }
.lw-hub-page .lw-hub-symptom-nav li + li { border-top: 1px solid var(--ghost-line); }
.lw-hub-page .lw-hub-symptom-nav a { display: flex; align-items: center; min-height: 48px; padding-block: 12px; color: var(--ghost-accent); }
.lw-hub-page .lw-hub-symptoms > div { scroll-margin-top: 24px; }
.lw-hub-page .lw-hub-criteria { margin: 28px 0 0; }
.lw-hub-page .lw-hub-criteria > div { display: grid; grid-template-columns: minmax(0,190px) minmax(0,1fr); gap: 36px; padding: 23px 0; border-top: 1px solid var(--ghost-line); }
.lw-hub-page .lw-hub-criteria > div:last-child { border-bottom: 1px solid var(--ghost-line); }
.lw-hub-page .lw-hub-criteria dt { font-size: 1.1rem; font-weight: 700; }
.lw-hub-page .lw-hub-criteria dd { margin: 0; max-width: 72ch; color: var(--ghost-muted); }
.lw-hub-page .lw-hub-section-head { margin-bottom: 28px; }
.lw-hub-page .lw-hub-section-head p { margin-bottom: 0; }
.lw-hub-page .lw-hub-cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.lw-hub-page .lw-hub-cards:has(> :nth-child(2):last-child) { grid-template-columns: repeat(2,minmax(0,1fr)); }
.lw-hub-page .lw-hub-cards:has(> :only-child) { grid-template-columns: minmax(0,780px); }
.lw-hub-page .lw-hub-card { min-width: 0; border: 1px solid var(--ghost-line); background: #202927; }
.lw-hub-page .lw-hub-card > a { display: flex; flex-direction: column; height: 100%; }
.lw-hub-page .lw-hub-card img { width: 100%; height: auto; aspect-ratio: 3/2; object-fit: contain; background: #111516; }
.lw-hub-page .lw-hub-card-copy { padding: 22px; }
.lw-hub-page .lw-hub-card h3 { margin: 0 0 12px; color: var(--ghost-ink); font-size: 1.3rem; line-height: 1.3; }
.lw-hub-page .lw-hub-card p { margin: 0 0 20px; color: var(--ghost-muted); font-size: .95rem; line-height: 1.6; }
.lw-hub-page .lw-hub-card span { color: var(--ghost-accent); font-size: .86rem; text-decoration: underline; text-underline-offset: 4px; }
.lw-hub-page .lw-hub-cards:has(> :only-child) .lw-hub-card > a { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; }
.lw-hub-page .lw-hub-pagination { margin-top: 26px; color: var(--ghost-muted); }
.lw-hub-page .lw-hub-pagination .pagination { display: flex; flex-wrap: wrap; gap: 18px; align-items: center; }
.lw-hub-page .lw-hub-pagination a { min-height: 44px; display: inline-flex; align-items: center; }
.lw-hub-page .lw-hub-next { margin-top: 54px; padding-top: 30px; border-top: 1px solid var(--ghost-line); }
.lw-hub-page .lw-hub-next h2 { margin-bottom: 24px; }
.lw-hub-page .lw-hub-next-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.lw-hub-page .lw-hub-next a { display: block; padding: 23px 26px; border: 1px solid var(--ghost-line); }
.lw-hub-page .lw-hub-next strong { display: block; margin-bottom: 8px; color: var(--ghost-accent); font-size: 1.12rem; }
.lw-hub-page .lw-hub-next span { display: block; color: var(--ghost-muted); font-size: .95rem; }
.lw-hub-page .lw-hub a:focus-visible { outline: 3px solid var(--ghost-accent); outline-offset: 5px; }
.lw-hub-page .lw-hub-card a:hover h3, .lw-hub-page .lw-hub-starter a:hover h2 { text-decoration: underline; text-decoration-color: var(--ghost-accent); text-underline-offset: 5px; }
.lw-hub-page .lw-hub-next a:hover { border-color: var(--ghost-accent); }
.lw-hub-page .lw-hub-archive h1 { max-width: 25ch; font-size: clamp(2.4rem,4.5vw,3.8rem); }
@media (max-width: 900px) { .lw-hub-page .lw-hub-cards { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 800px) {
  .lw-hub-page .lw-hub-intro { grid-template-columns: 1fr; gap: 25px; }
  .lw-hub-page .lw-hub-starter { max-width: 650px; }
  .lw-hub-page .lw-hub-starter a { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; }
  .lw-hub-page .lw-hub-decisions { gap: 0 26px; }
}
@media (max-width: 600px) {
  .lw-hub-page .lw-hub { padding-block: 24px 54px; }
  .lw-hub-page .lw-hub-crumbs { margin-bottom: 26px; }
  .lw-hub-page .lw-hub h1 { font-size: clamp(2.25rem,9.5vw,3.1rem); line-height: 1.1; }
  .lw-hub-page .lw-hub-intro header > p { font-size: 1.02rem; }
  .lw-hub-page .lw-hub-starter a { display: block; }
  .lw-hub-page .lw-hub-starter a > div { padding: 20px; }
  .lw-hub-page .lw-hub-jumps { gap: 8px; }
  .lw-hub-page .lw-hub-jumps a { padding-inline: 12px; }
  .lw-hub-page .lw-hub-section { padding-top: 38px; }
  .lw-hub-page .lw-hub-decisions, .lw-hub-page .lw-hub-next-links, .lw-hub-page .lw-hub-cards, .lw-hub-page .lw-hub-cards:has(> :nth-child(2):last-child) { grid-template-columns: minmax(0,1fr); }
  .lw-hub-page .lw-hub-cards:has(> :only-child) .lw-hub-card > a { display: flex; }
  .lw-hub-page .lw-hub-path li { padding: 20px 0 22px 40px; }
  .lw-hub-page .lw-hub-path li::before { left: 0; top: 20px; }
  .lw-hub-page .lw-hub-note { padding: 18px; }
  .lw-hub-page .lw-hub-criteria > div { grid-template-columns: minmax(0,1fr); gap: 10px; }
  .lw-hub-page .lw-hub-next { margin-top: 38px; }
}
