/* ==========================================================================
   嘉宾阵容页（page-speakers.php）
   配色沿用全站深空暖黑 + 火星橙红，人物照片用圆形裁切强化「人」的感知。
   ========================================================================== */

.page-main{position:relative;z-index:2}

/* ---------- 头图 ---------- */
.spk-hero{position:relative;padding:calc(var(--head-h) + 72px) 0 66px;overflow:hidden;
  border-bottom:1px solid var(--line-s)}
.spk-hero__glow{position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(70% 120% at 18% 0%,rgba(226,84,44,.18),transparent 62%),
             radial-gradient(60% 100% at 88% 20%,rgba(240,185,80,.10),transparent 60%)}
.spk-hero__wrap{position:relative;z-index:2}
.spk-hero .crumbs{color:var(--faint);margin-bottom:26px}
.spk-hero__en{font-size:12px;letter-spacing:.34em;text-transform:uppercase;color:var(--ember);
  font-weight:700;margin-bottom:16px}
.spk-hero__title{font-size:clamp(32px,5.4vw,68px);font-weight:800;letter-spacing:-.02em;margin:0 0 22px}
.spk-hero__desc{font-size:16.5px;line-height:2;color:var(--dim);max-width:720px;margin:0 0 44px}
.spk-hero__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));
  gap:1px;background:var(--line-s);border:1px solid var(--line-s)}
.spk-hero__stats>div{background:var(--void);padding:26px 24px}
.spk-hero__stats dt{font-size:clamp(26px,3vw,40px);font-weight:800;line-height:1;
  color:var(--cream);margin-bottom:10px;letter-spacing:-.02em}
.spk-hero__stats dd{margin:0;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}

/* ---------- 分组 ---------- */
.spk-group{padding:clamp(56px,6.4vw,96px) 0 0}
.spk-group__head{display:flex;align-items:flex-end;gap:22px;flex-wrap:wrap;margin-bottom:34px}
.spk-group__head>div{min-width:0}
.spk-group__en{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--faint);
  font-weight:700;margin-bottom:10px}
.spk-group__title{font-size:clamp(24px,3vw,36px);font-weight:800;margin:0 0 10px;
  display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.spk-group__n{font-size:14px;font-weight:700;color:var(--ember);letter-spacing:.06em;
  font-variant-numeric:tabular-nums}
.spk-group__desc{color:var(--dim);font-size:15px;line-height:1.85;margin:0;max-width:620px}
.spk-group__head .btn{margin-left:auto;flex-shrink:0}

/* ---------- 嘉宾卡 ---------- */
.spk-grid{list-style:none;margin:0;padding:0;display:grid;
  grid-template-columns:repeat(auto-fill,minmax(min(100%,212px),1fr));gap:clamp(16px,1.6vw,26px)}
.spk-card>a{display:flex;flex-direction:column;align-items:center;text-align:center;height:100%;
  padding:26px 18px 22px;border:1px solid var(--line);background:var(--void2);
  transition:transform .4s var(--ease),border-color .4s,box-shadow .4s}
.spk-card>a:hover{transform:translateY(-7px);border-color:var(--ember);
  box-shadow:0 26px 50px -28px rgba(226,84,44,.6)}
.spk-card>a:focus-visible{outline:2px solid var(--ember);outline-offset:3px}
.spk-card__photo{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:18px;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  background:linear-gradient(140deg,var(--void3),#3A1C10);border:1px solid var(--line)}
.spk-card__photo img,.spk-card__img{width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .5s var(--ease)}
.spk-card>a:hover .spk-card__photo img{transform:scale(1.07)}
.spk-card__ph{font-size:34px;font-weight:800;color:rgba(255,225,168,.35);line-height:1}
.spk-card__t{font-size:15px;font-weight:700;line-height:1.55;color:var(--text);margin-bottom:9px;
  overflow-wrap:anywhere;transition:color .3s;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.spk-card>a:hover .spk-card__t{color:var(--cream)}
/* 摘要压在深色卡上，用 13px 正文的 AA 门槛配色（不用 --faint，那个不够） */
.spk-card__d{font-size:12.5px;line-height:1.7;color:rgba(255,246,236,.66);overflow-wrap:anywhere;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.spk-group__more{margin:28px 0 0;text-align:center;font-size:14px}
.spk-group__more a{color:var(--cream);font-weight:600;border-bottom:1px solid rgba(255,225,168,.3);
  padding-bottom:2px;transition:.3s}
.spk-group__more a:hover{color:var(--ember);border-color:var(--ember);gap:4px}

/* ---------- 窄屏 ---------- */
@media(max-width:860px){
  .spk-card__photo{width:80px;height:80px;margin-bottom:14px}
  .spk-group__head .btn{margin-left:0}
  .spk-hero__stats>div{padding:20px 18px}
}
@media(max-width:480px){
  .spk-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr));gap:14px}
  .spk-card>a{padding:18px 12px 16px}
  .spk-card__t{font-size:14px}
  .spk-card__d{display:none}   /* 卡片已经很窄，摘要在标签页里看 */
}
