/* 品牌支持位公共样式。命名使用 partner，避免被广告拦截规则误伤。 */

.partner-home-section{padding:80px 0 0}
.partner-home-section .sec-head{margin-bottom:36px}
.partner-home-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,210px));
  justify-content:center;gap:18px;max-width:1000px;margin:0 auto;
}
.partner-home-item{
  position:relative;overflow:hidden;
  min-width:0;aspect-ratio:1;display:block;padding:0;
  border-radius:20px;background:var(--card);
  border:1px solid var(--card-border);box-shadow:var(--card-shadow);
  text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s;
}
a.partner-home-item:hover{
  transform:translateY(-3px);border-color:rgba(99,102,241,.3);
  box-shadow:var(--card-shadow-hover);
}
.partner-home-logo,.partner-home-fallback{
  width:100%;height:100%;border-radius:inherit;
  border:0;background:transparent;
  transition:transform .2s ease;
}
.partner-home-logo{display:block;object-fit:cover;padding:0}
.partner-home-fallback{
  display:flex;align-items:center;justify-content:center;
  color:var(--accent);font-size:56px;font-weight:800;
  background:var(--pill-bg);
}
.partner-home-copy{position:absolute;inset:0;pointer-events:none}
.partner-home-name,.partner-home-type{display:none}
.partner-home-desc{
  position:absolute;left:0;right:0;bottom:0;margin:0;padding:40px 16px 16px;
  color:#fff;font-size:12.5px;font-weight:600;line-height:1.5;text-align:center;
  background:linear-gradient(180deg,transparent,rgba(15,23,42,.84));
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  opacity:0;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease;
}
.partner-home-item:hover .partner-home-logo,
.partner-home-item:hover .partner-home-fallback,
.partner-home-item:focus-visible .partner-home-logo,
.partner-home-item:focus-visible .partner-home-fallback{transform:scale(1.025)}
.partner-home-item:hover .partner-home-desc,
.partner-home-item:focus-visible .partner-home-desc{
  opacity:1;transform:translateY(0);
}
@media(max-width:900px){
  .partner-home-grid{grid-template-columns:repeat(3,minmax(0,210px))}
}
@media(max-width:700px){
  .partner-home-section{padding-top:60px}
  .partner-home-grid{grid-template-columns:repeat(2,minmax(0,200px))}
}
@media(max-width:460px){
  .partner-home-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .partner-home-item{border-radius:16px}
  .partner-home-fallback{font-size:42px}
  .partner-home-desc{padding:32px 10px 11px;font-size:11px}
  .partner-home-desc{-webkit-line-clamp:2}
}
