.rel-cases-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:40px; }
.rel-case-card { background:#fff; border-radius:var(--radius-lg); overflow:hidden; box-shadow:0 12px 40px rgba(11,31,58,.08); text-decoration:none; color:inherit; transition:transform .3s var(--ease-out-quart),box-shadow .3s var(--ease-out-quart); }
.rel-case-card:hover { transform:translateY(-6px); box-shadow:0 20px 60px rgba(11,31,58,.14); }
.rel-case-card img { width:100%; aspect-ratio:4/3; object-fit:cover; display:block; }
.rel-case-body { padding:22px; }
.rel-case-title { font-size:17px; color:var(--navy-900); margin-bottom:6px; }
.rel-case-loc { font-size:13px; color:var(--gold-700); margin-bottom:8px; }
.rel-case-short { font-size:13px; color:var(--gray-500); line-height:1.6; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
@media (max-width:1024px){ .rel-cases-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:640px){ .rel-cases-grid { grid-template-columns:1fr; } }
.case-sol-tray {
  background: var(--cool-100);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-lg);
  padding: var(--space-5) var(--space-6);
  margin-top: var(--space-8);
  margin-bottom: var(--space-10);
}
.case-sol-links { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:var(--space-2) var(--space-3); }
.case-sol-label { font-size:0.8125rem; color:var(--gray-500); margin-right:var(--space-3); letter-spacing:0.04em; }
.case-sol-chip { display:inline-flex; align-items:center; padding:0.35rem 0.85rem; border:0; border-radius:var(--radius-full); color:var(--blue-700); background:rgba(74,144,226,.10); font-size:0.875rem; font-weight:500; text-decoration:none; transition:background-color .2s ease,color .2s ease,transform .2s var(--ease-out-quart); }
.case-sol-chip:hover { color:var(--navy-900); background:rgba(74,144,226,.20); transform:translateY(-1px); }
/* 移动端触控：0.35rem→0.65rem，实测命中 35→44px */
@media (max-width:767px) { .case-sol-chip { padding:0.65rem 1rem; } }
.case-actions { display:flex; flex-direction:column; align-items:center; gap:var(--space-5); margin-top:var(--space-8); padding-top:var(--space-6); border-top:1px solid var(--gray-300); }
.case-comm-badge { display:inline-flex; align-items:center; gap:var(--space-2); padding:0.45rem 0.95rem; border:1px solid rgba(201,162,39,.30); border-radius:var(--radius-full); background:rgba(201,162,39,.06); color:var(--navy-900); font-size:0.875rem; font-weight:400; line-height:1.4; }
.case-comm-badge .icon { width:1.0625rem; height:1.0625rem; color:var(--gold-700); flex-shrink:0; }
.case-comm-badge strong { color:var(--gold-700); font-weight:600; padding:0 0.15rem; }
.case-cta-main { width:100%; max-width:360px; padding:var(--space-4) var(--space-8); font-size:1.0625rem; box-shadow:0 8px 24px rgba(74,144,226,.28); }
.case-cta-main:hover { box-shadow:0 12px 32px rgba(74,144,226,.38); }
.case-wecom-nudge { display:flex; flex-direction:column; align-items:center; width:100%; max-width:420px; }
.case-wecom-nudge .wecom-card { width:100%; max-width:420px; margin-top:0; }
/* 方案A：客服降为次级——「点击咨询」变蓝字下划线细链接，不给正面大按钮 */
.case-wecom-nudge .wecom-card-body .wecom-card-btn.wecom-kf { display:inline-flex; align-items:center; gap:var(--space-2); padding:0; height:auto; line-height:1; white-space:nowrap; width:auto; background:transparent; border:0; box-shadow:none; color:var(--blue-600); font-size:0.9375rem; font-weight:500; text-decoration:underline; text-underline-offset:4px; text-decoration-color:rgba(74,144,226,.35); transition:color .2s ease,text-decoration-color .2s ease; }
.case-wecom-nudge .wecom-card-body .wecom-card-btn.wecom-kf:hover { color:var(--blue-600); text-decoration-color:var(--blue-600); }
/* 案例页 wecom-kf 内微信图标：用 gap 控距，不额外加 margin，宽度适配 */
.case-wecom-nudge .wecom-card-body .wecom-card-btn .wecom-ico { width:0.9375rem; height:0.9375rem; margin-right:0; }
.case-wecom-nudge .wecom-card-body .wecom-card-btn.wecom-zoom-ghost { display:inline-flex; width:auto; height:auto; line-height:1; padding:0.45rem 1rem; border:1px solid rgba(11,31,58,.18); border-radius:var(--radius-sm); color:var(--navy-900); background:transparent; box-shadow:none; font-size:0.875rem; font-weight:500; }
.case-wecom-nudge .wecom-card-body .wecom-card-btn.wecom-zoom-ghost:hover { border-color:var(--blue-500); color:var(--blue-600); }
.case-actions-row { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; width:100%; max-width:720px; gap:var(--space-4) var(--space-6); }
.case-comm-link-a { display:inline-flex; align-items:center; gap:var(--space-2); color:var(--gray-500); font-size:0.875rem; font-weight:400; text-decoration:none; transition:color .2s ease; }
.case-comm-link-a:hover { color:var(--navy-900); }
.case-comm-link-a .icon.arrow { width:15px; height:15px; transition:transform .2s var(--ease-out-quart); }
.case-comm-link-a:hover .icon.arrow { transform:translateX(3px); }
.case-back-link { display:inline-flex; align-items:center; gap:var(--space-2); color:var(--gray-600); font-size:0.9375rem; font-weight:500; text-decoration:none; transition:color .2s ease,transform .2s var(--ease-out-quart); }
.case-back-link:hover { color:var(--navy-900); }
.case-back-link:hover .icon { transform:translateX(-3px); }
.case-back-link .icon { width:18px; height:18px; transition:transform .2s var(--ease-out-quart); }
.btn-copy { display:inline-flex; align-items:center; gap:var(--space-2); padding:0.55rem 1rem; border:1px solid rgba(11,31,58,.18); color:#0b1f3a; background:#fff; border-radius:var(--radius-full); font-size:0.875rem; font-weight:500; transition:background-color .2s ease,border-color .2s ease,transform .2s var(--ease-out-quart),color .2s ease; }
.btn-copy .icon { width:15px; height:15px; }
.btn-copy:hover { background:rgba(11,31,58,.06); border-color:rgba(11,31,58,.32); transform:translateY(-1px); }
.btn-copy:active { transform:translateY(0); }
.btn-copy.copied { background:rgba(22,163,74,.08); border-color:var(--color-success); color:var(--color-success-ink); }
.btn-copy.copied .icon { color:var(--color-success); }
.case-wecom-nudge .wecom-card-btn + .wecom-card-btn { margin-top:var(--space-3); }
