.hub-page{max-width:1100px;min-height:60dvh;padding:88px 18px calc(104px + env(safe-area-inset-bottom,0px));color:var(--text-primary);margin:0 auto}.hub-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 10px;font-family:Courier New,monospace;font-size:12px}.hub-title{font-family:var(--font-display);color:var(--text-primary);text-wrap:balance;margin:0 0 12px;font-size:clamp(1.75rem,7vw,3rem);font-weight:400;line-height:1.15}.hub-tagline{font-family:var(--font-display);color:var(--text-secondary);max-width:58ch;margin:0 0 14px;font-size:15px;line-height:1.7}.hub-meta{letter-spacing:.14em;text-transform:uppercase;color:var(--text-secondary);margin:0;font-family:Courier New,monospace;font-size:12px}.hub-hero{border-bottom:.5px solid var(--border-solid);padding-bottom:26px}.hub-section{padding-top:34px}.hub-section--last{border-top:.5px solid var(--border-solid);margin-top:34px;padding-top:26px}.hub-h2{font-family:var(--font-display);color:var(--text-primary);margin:0 0 16px;font-size:19px;font-weight:400;line-height:1.35}.hub-chips{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.hub-chip{letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary);background:var(--surface);border:.5px solid var(--border-solid);border-radius:999px;padding:9px 13px;font-family:Courier New,monospace;font-size:12px}.hub-grid{grid-template-columns:1fr;gap:10px;margin:0;padding:0;list-style:none;display:grid}.hub-card{background:var(--surface);border:.5px solid var(--border-solid);border-radius:5px;flex-direction:column;gap:7px;min-height:44px;padding:16px 15px;text-decoration:none;transition:border-color .18s ease-out,background-color .18s ease-out;display:flex}@media (hover:hover) and (pointer:fine){.hub-card:hover{border-color:var(--border-mid);background:var(--surface2)}}.hub-card:active{transform:scale(.995)}.hub-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hub-card__title{font-family:var(--font-display);color:var(--text-primary);overflow-wrap:anywhere;font-size:16px;line-height:1.35}.hub-card__cat{letter-spacing:.14em;text-transform:uppercase;color:var(--text-secondary);font-family:Courier New,monospace;font-size:12px}.hub-card__hook{font-family:var(--font-display);color:var(--text-secondary);font-size:13px;line-height:1.6}.hub-card__foot{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-top:2px;font-family:Courier New,monospace;font-size:12px}.hub-state{background:var(--surface);border:.5px solid var(--border-solid);border-left:2px solid var(--accent-muted);border-radius:4px;padding:20px 18px}.hub-state__title{font-family:var(--font-display);color:var(--text-primary);margin:0 0 8px;font-size:16px}.hub-state__body{font-family:var(--font-display);color:var(--text-secondary);max-width:56ch;margin:0 0 18px;font-size:13.5px;line-height:1.7}.hub-cta{background:var(--accent-fill);min-height:46px;color:var(--on-accent);letter-spacing:.12em;text-transform:uppercase;border-radius:3px;justify-content:center;align-items:center;padding:0 20px;font-family:Courier New,monospace;font-size:12px;font-weight:700;text-decoration:none;transition:transform .14s ease-out;display:inline-flex}.hub-cta:active{transform:scale(.97)}.hub-cta:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.hub-others{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.hub-other{min-height:44px;font-family:var(--font-display);color:var(--text-secondary);border-bottom:1px solid var(--border-solid);align-items:center;font-size:14.5px;text-decoration:none;transition:color .16s ease-out;display:flex}@media (hover:hover) and (pointer:fine){.hub-other:hover{color:var(--accent)}}.hub-other:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (min-width:768px){.hub-page{padding:104px 32px 80px}.hub-h2{font-size:21px}.hub-grid{grid-template-columns:repeat(2,1fr);gap:12px}.hub-others{flex-flow:wrap;gap:10px 26px}.hub-other{border-bottom:none}}@media (min-width:1100px){.hub-grid{grid-template-columns:repeat(3,1fr)}}@media (prefers-reduced-motion:reduce){.hub-card,.hub-cta,.hub-other{transition:none}.hub-card:active,.hub-cta:active{transform:none}}
