/* hub-cards.css — 枢纽卡片（.hub-*）共享样式
 * 2026-10-15 第 180 轮抽取。此前若干枢纽页 / index / our-products /
 * services 五个页面各自内联了一份一模一样的 1480 字节副本，本轮新增
 * home-furniture 的小类卡与 supermarket-retail 枢纽后会变成七份，故抽成共享表。
 * 取值以 our-products.html 原内联块为准；index.html 的 .hub-wrap padding 与
 * .hub-h font-size 是该页独有的版式微调，留在该页内联覆盖里，不要搬进来。
 */
.hub-wrap{max-width:1180px;margin:0 auto;padding:64px 24px 72px}
.hub-kicker{font-size:12px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:#2563eb}
.hub-h{font-size:clamp(30px,4.2vw,46px);line-height:1.12;font-weight:800;color:#0f172a;margin:10px 0 14px}
.hub-sub{font-size:17px;line-height:1.7;color:#475569;max-width:760px;margin:0 0 40px}
.hub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.hub-card{display:block;text-decoration:none;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;
 background:#fff;transition:.22s;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.hub-media{background:#f1f5f9;overflow:hidden}
.hub-media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .5s ease}
.hub-card:hover .hub-media img{transform:scale(1.05)}
.hub-body{padding:22px 24px 24px}
.hub-card:hover{transform:translateY(-3px);border-color:#bfdbfe;box-shadow:0 18px 38px -18px rgba(37,99,235,.35)}
.hub-card h3{font-size:21px;font-weight:800;color:#0f172a;margin:0 0 8px}
.hub-card p{font-size:15px;line-height:1.65;color:#475569;margin:0 0 14px}
.hub-card .hub-go{font-size:14px;font-weight:700;color:#2563eb}
.hub-tag{display:inline-block;font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;
 color:#64748b;background:#f1f5f9;border-radius:999px;padding:4px 10px;margin-bottom:12px}
@media(max-width:640px){.hub-wrap{padding:44px 18px 56px}.hub-body{padding:20px}}

/* 小类入口卡（home-furniture 底部）：只有两张卡时 auto-fit 会把卡撑到 560px 宽，
   4:3 的图跟着变成 420px 高，比上面的产品滑动条重太多。这里给个宽度上限。 */
.hub-grid-sub{grid-template-columns:repeat(auto-fit,minmax(280px,400px));justify-content:center}
