.hub-intro { max-width: 780px; color: #444; line-height: 1.7; margin: 0 0 28px; }
.hub-grid { display: grid; gap: 16px; }
.hub-card { display: block; padding: 18px 20px; border: 1px solid #e1e4e8; border-radius: 8px; color: inherit; text-decoration: none; background: #fff; }
.hub-card:hover { box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1); text-decoration: none; }
.hub-card h2 { margin: 0 0 8px; font-size: 1.15em; color: #1a1a1a; }
.hub-card p { margin: 0; color: #555; line-height: 1.55; }
.hub-meta { margin: 0 0 8px; color: #1a5f2a; font-size: 0.82em; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; }
.hub-note { margin: 30px 0 0; padding: 16px 18px; border-left: 4px solid #1a56c4; background: #eef6ff; line-height: 1.6; }
.hub-topic-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 28px; }
.hub-topic-list span { border: 1px solid #ccd3db; border-radius: 4px; padding: 4px 9px; font-size: 0.85em; color: #445; }
.hub-section-title { margin-top: 36px; }
@media (max-width: 600px) { .hub-card { padding: 16px; } }