/* ==========================================================================
   danwei-tuandui.html 单位团队专属样式
   母题：三角色卡 / 办公场景图双图 / 协作流程时间轴（方块节点）
   ========================================================================== */

/* ---------- 1. 头图 ---------- */
.dw-hero {
  background: linear-gradient(rgba(53, 47, 34, .84), rgba(53, 47, 34, .78)),
    url(../images/peixun-jiaoshi.jpg) center/cover no-repeat;
  padding: clamp(130px, 15vw, 180px) 0 clamp(46px, 6vw, 72px); color: #f4f1e8;
}
.dw-hero-inner { max-width: 720px; }
.dw-hero .crumbs { color: rgba(244, 241, 232, .7); margin-bottom: 22px; }
.dw-hero .crumbs a { color: var(--khaki-200); }
.dw-hero .eyebrow { color: var(--khaki-300); }
.dw-hero .eyebrow::before { background: var(--khaki-300); }
.dw-hero h1 { color: #fff; margin: 8px 0 18px; }
.dw-lead { font-size: 16.5px; color: #e6dfcd; max-width: 640px; }

/* ---------- 2. 团队构成 ---------- */
.dw-roles { background: var(--mist); }
.dw-role-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.dw-role {
  background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius-l);
  padding: 30px 26px; box-shadow: var(--shadow-s); text-align: center;
  transition: transform .35s var(--ease), box-shadow .35s var(--ease);
}
.dw-role:hover { transform: translateY(-6px); box-shadow: var(--shadow-m); }
.dw-avatar {
  width: 64px; height: 64px; margin: 0 auto 16px; border-radius: 50%;
  display: grid; place-items: center; font-size: 24px; font-weight: 800;
  background: linear-gradient(150deg, var(--khaki-500), var(--khaki-700, #8a7a57)); color: #fff;
}
.dw-role h3 { font-size: 18px; margin-bottom: 4px; }
.dw-title { font-size: 12.5px; color: var(--stamp); margin-bottom: 12px; letter-spacing: .04em; }
.dw-role > p:last-child { font-size: 14px; color: var(--ink-soft); margin: 0; }

/* ---------- 3. 办公场景 ---------- */
.dw-office { background: var(--paper); padding-bottom: clamp(40px,5vw,64px); }
.dw-office-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.dw-office figure img { width: 100%; aspect-ratio: 16/10; object-fit: cover; border-radius: var(--radius-m); box-shadow: var(--shadow-s); }
.dw-office figcaption { font-size: 12.5px; color: var(--ink-faint); margin-top: 9px; }

/* ---------- 3.5 服务对象 ---------- */
.dw-types { background: var(--paper); padding: clamp(20px,3vw,36px) 0; }
.dw-types-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.dw-type {
  background: var(--mist); border: 1px solid var(--line); border-radius: var(--radius-m);
  padding: 18px 18px;
}
.dw-type h3 { font-size: 15px; color: var(--khaki-800); margin-bottom: 7px; }
.dw-type p { font-size: 13px; color: var(--ink-soft); margin: 0; }
.dw-types-note { text-align: center; font-size: 14px; color: var(--ink-soft); margin: 20px 0 0; }

/* ---------- 4. 协作流程时间轴：方块节点 ---------- */
.dw-flow { background: var(--khaki-100); }
.coop-tl { max-width: 760px; margin-inline: auto; }
.coop-tl .tl-row { --tw: 84px; --aw: 48px; padding: 13px 0; }
.coop-tl .tl-time { display: flex; align-items: center; justify-content: flex-end; padding-right: 16px; }
.coop-tl .tl-time em {
  font-style: normal; font-size: 13.5px; font-weight: 800; color: var(--khaki-800);
  background: var(--paper); border: 1px solid var(--line); border-radius: 6px; padding: 4px 12px;
}
/* 方块节点 */
.coop-tl .tl-node {
  width: 26px; height: 26px; border-radius: 7px;
  background: var(--paper); border: 2.5px solid var(--khaki-600); color: var(--khaki-600);
}
.coop-tl .tl-node.anim { animation: sqFloat 3.2s ease-in-out infinite; }
@keyframes sqFloat {
  0%, 100% { transform: translate(-50%, -50%); }
  50% { transform: translate(-50%, -56%); }
}
.coop-tl .tl-row:nth-child(odd) .tl-node { background: var(--khaki-600); color: #fff; }
.coop-tl .tl-node svg { width: 14px; height: 14px; }
.coop-tl .tl-body { padding: 4px 0 4px 26px; }
.coop-tl .tl-body h3 { font-size: 16.5px; margin-bottom: 4px; }
.coop-tl .tl-body p { font-size: 14px; color: var(--ink-soft); margin: 0; }

/* ---------- 5. 企业合作 CTA ---------- */
.dw-cta-band { background: linear-gradient(120deg, var(--khaki-600), var(--khaki-800)); padding: clamp(48px, 6vw, 80px) 0; }
.dw-cta-inner { text-align: center; }
.dw-cta-inner h2 { color: #fff; margin-bottom: 10px; }
.dw-cta-inner p { color: #d9d2bf; font-size: 15px; margin-bottom: 24px; }

/* ---------- 2.5 协作职责对照表 ---------- */
.dw-dutytable { background: var(--paper); }
.dw-tablewrap {
  overflow-x: auto; background: var(--paper); border: 1px solid var(--line);
  border-radius: var(--radius-l); box-shadow: var(--shadow-s);
}
.dw-table { width: 100%; border-collapse: collapse; table-layout: fixed; min-width: 640px; }
.dw-table th, .dw-table td { padding: 14px 16px; text-align: left; font-size: 14px; }
.dw-table thead th {
  background: var(--khaki-100); color: var(--khaki-800); font-weight: 800; font-size: 13.5px;
  border-bottom: 2px solid var(--khaki-300);
}
.dw-table tbody tr { border-bottom: 1px solid var(--line); }
.dw-table tbody tr:last-child { border-bottom: none; }
.dw-table tbody tr:nth-child(even) { background: var(--mist); }
.dw-table td:first-child { font-weight: 700; color: var(--khaki-800); }
.dw-table td { color: var(--ink-soft); }

/* ---------- 4. 团报规模参考 ---------- */
.dw-scale { background: var(--mist); }
.dw-scale-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.dw-scale-card {
  background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius-l);
  padding: 26px 24px; box-shadow: var(--shadow-s); border-top: 3px solid var(--khaki-500);
}
.dw-scale-card h3 { font-size: 17px; margin-bottom: 8px; color: var(--khaki-800); }
.dw-scale-card p { font-size: 14px; color: var(--ink-soft); margin: 0; }

/* ---------- 响应式 ---------- */
@media (max-width: 768px) {
  .dw-role-grid { grid-template-columns: 1fr; }
  .dw-office-grid { grid-template-columns: 1fr; }
  .dw-types-grid { grid-template-columns: 1fr 1fr; }
  .dw-scale-grid { grid-template-columns: 1fr; }
  .coop-tl .tl-row { --tw: 60px; --aw: 36px; }
  .coop-tl .tl-node { width: 22px; height: 22px; }
  .coop-tl .tl-node svg { width: 12px; height: 12px; }
  .coop-tl .tl-body { padding-left: 14px; }
}
