/* ============================================================
   cailiaoyuan.css —— 材料员岗位页
   设计：波浪底 hero + 横向步骤条 + 咬合图片墙 + 表格 + 键帽片 + 墨黑带 + 侧边竖排标题
   ============================================================ */

/* ---------- Hero：波浪底边裁切 ---------- */
.hero{
  margin-top:var(--nav-h);
  background:
    linear-gradient(100deg, rgba(74,55,40,.72), rgba(28,26,23,.82)),
    url("../images/banner-gangwei.jpg") center/cover no-repeat,
    var(--ink);
  color:var(--cream);
  padding:96px 0 130px;
  clip-path:polygon(0 0,100% 0,100% 88%,76% 96%,50% 88%,24% 96%,0 88%);
}
.hero-inner{ position:relative; }
.crumb{ color:rgba(242,232,213,.72); margin-bottom:26px; }
.crumb a{ color:rgba(242,232,213,.72); }
.crumb a:hover{ color:var(--tan); }
.hero-key{ margin-bottom:18px; }
.hero-title{ font-size:clamp(34px,5vw,56px); color:var(--cream); max-width:740px; line-height:1.18; }
.hero-sub{ margin-top:20px; max-width:660px; font-size:16.5px; color:rgba(242,232,213,.86); }
.hero-cta{ margin-top:34px; display:flex; flex-wrap:wrap; gap:14px; }
.btn-ghost.light{ color:var(--cream); border-color:rgba(242,232,213,.5); }
.btn-ghost.light:hover{ color:var(--paper); border-color:var(--cream); }

/* ---------- 通用 ---------- */
.sec{ padding:78px 0; }
.sec-tag{ font-family:var(--font-mono); font-size:13px; letter-spacing:3px; color:var(--brown-3); margin-bottom:12px; }
.sec-tag.center{ text-align:center; }
.sec h2{ font-size:clamp(24px,3vw,34px); color:var(--ink); margin-bottom:16px; }
h2.center{ text-align:center; }
.lead{ max-width:780px; margin:0 auto; color:var(--ink-3); }
.lead.center{ text-align:center; }
.sec p{ margin-bottom:14px; }
.sec p b{ color:var(--brown-2); }

/* ---------- 板块 2：横向步骤条 ---------- */
.flow-row{
  margin-top:36px; list-style:none;
  display:grid; grid-template-columns:repeat(4,1fr); gap:18px;
}
.flow-cell{
  background:var(--paper); border:1px solid var(--line-2); border-radius:14px;
  padding:24px 20px 22px; position:relative; box-shadow:0 5px 0 var(--line-2);
}
.flow-cell:not(:last-child)::after{
  content:"→"; position:absolute; right:-16px; top:34px;
  font-family:var(--font-mono); color:var(--brown-3); font-size:18px; z-index:2;
}
.f-no{
  display:flex; width:38px; height:38px; border-radius:50%;
  background:var(--ink); color:var(--cream); font-family:var(--font-mono); font-weight:700;
  align-items:center; justify-content:center; margin-bottom:14px;
}
.flow-cell h3{ font-size:17px; color:var(--brown-2); margin-bottom:8px; }
.flow-cell p{ font-size:13.5px; margin:0; }
.flow-cell a{ color:var(--brown-2); text-decoration:underline; text-underline-offset:3px; }
.policy-note{
  margin-top:28px; font-size:13.5px; color:var(--brown-3);
  border-left:3px solid var(--tan); padding:10px 16px; background:var(--paper-2);
}
.policy-note b{ color:var(--brown-2); }

/* ---------- 板块 3：咬合图片墙 ---------- */
.sec-wall{ background:var(--paper-2); }
.wall-grid{
  display:grid; grid-template-columns:1.15fr 1fr; grid-template-rows:auto auto;
  gap:26px 30px; align-items:start;
}
.wall-a{ grid-row:1; grid-column:1; }
.wall-b{ grid-row:2; grid-column:2; margin-top:-60px; }
.wall-text{ grid-row:1 / span 2; grid-column:2; align-self:center; }
.wall-a img{ border-radius:var(--r-m); box-shadow:var(--shadow); clip-path:polygon(0 0,100% 0,100% 94%,0 100%); }
.wall-b img{ border-radius:var(--r-m); box-shadow:var(--shadow); clip-path:polygon(0 6%,100% 0,100% 100%,0 96%); }

/* ---------- 板块 4：职责表 ---------- */
.table-wrap{ margin-top:30px; overflow-x:auto; }
.mat-table{ background:var(--paper); }
.mat-table th{ background:var(--ink); color:var(--cream); border-color:var(--ink-3); }
.mat-table tbody tr:nth-child(even){ background:var(--paper-2); }
.mat-table td{ font-size:14.5px; }

/* ---------- 板块 5：键帽片 ---------- */
.sec-chips{ background:var(--paper-2); }
.chip-row{ margin-top:34px; display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.chip{
  background:var(--paper); border:1px solid var(--line); border-radius:12px;
  padding:20px 16px; box-shadow:0 4px 0 var(--line);
}
.chip span{
  display:block; font-family:var(--font-mono); font-weight:700; color:var(--brown);
  border-bottom:2px solid var(--tan); padding-bottom:8px; margin-bottom:10px;
}
.chip p{ font-size:13.5px; margin:0; }

/* ---------- 板块 6：墨黑深色带 ---------- */
.sec-dark{
  background:var(--ink); color:rgba(242,232,213,.86);
  padding:90px 0; clip-path:polygon(0 5%,100% 0,100% 100%,0 95%);
}
.sec-dark h2{ color:var(--cream); }
.sec-tag.light{ color:var(--tan); }
.dark-row{ margin-top:24px; display:grid; grid-template-columns:1fr 1fr; gap:30px; }
.dark-row p{ font-size:15px; color:rgba(242,232,213,.82); margin:0; }
.dark-row a{ color:var(--tan); text-decoration:underline; text-underline-offset:3px; }

/* ---------- 板块 7：侧边竖排标题 ---------- */
.career-wrap{ position:relative; display:grid; grid-template-columns:80px 1fr; gap:30px; }
.v-title{
  writing-mode:vertical-rl; font-family:var(--font-mono); font-size:12px;
  letter-spacing:4px; color:var(--line-2); border-right:2px solid var(--tan);
  padding-right:12px; justify-self:start; height:100%;
}
.c-list{ display:grid; gap:18px; }
.c-row{
  display:grid; grid-template-columns:70px 1fr; gap:18px; align-items:center;
  background:var(--paper-2); border-radius:12px; padding:18px 22px;
}
.c-no{
  font-family:var(--font-mono); font-size:22px; font-weight:700; color:var(--cream);
  background:var(--brown); border-radius:8px; text-align:center; padding:8px 0;
}
.c-row h3{ font-size:17px; color:var(--brown-2); margin-bottom:4px; }
.c-row p{ font-size:14px; margin:0; }

/* ---------- 板块 8：配置建议 ---------- */
.sec-tip{ background:var(--paper-2); }
.tip-grid{ display:grid; grid-template-columns:1fr 1fr; gap:26px; }
.tip{
  background:var(--paper); border:1px solid var(--line); border-radius:var(--r-m);
  padding:26px; box-shadow:var(--shadow-sm);
}
.tip h3{ font-size:18px; color:var(--ink); margin-bottom:10px; }
.tip p{ font-size:14.5px; margin:0; }
.tip a{ color:var(--brown-2); text-decoration:underline; text-underline-offset:3px; }

/* ---------- 板块 9：FAQ ---------- */
.sec-faq{ padding-top:60px; }
.faq-wrap{ max-width:820px; }
h2.more-q{ margin-top:44px; }
.faq-item{
  background:var(--paper); border:1px solid var(--line); border-radius:12px;
  margin-bottom:14px; overflow:hidden;
}
.faq-item summary{
  cursor:pointer; padding:16px 20px; font-weight:700; color:var(--ink);
  list-style:none; position:relative; padding-right:44px;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item summary::after{
  content:"+"; position:absolute; right:18px; top:50%; transform:translateY(-50%);
  font-family:var(--font-mono); font-size:20px; color:var(--brown-3);
}
.faq-item[open] summary::after{ transform:translateY(-50%) rotate(45deg); }
.faq-item p{ padding:0 20px 18px; font-size:14.5px; color:var(--ink-3); margin:0; }

/* ---------- 板块 10：CTA ---------- */
.cta-box{
  background:var(--brown); color:var(--cream); text-align:center;
  border-radius:var(--r-l); padding:56px 30px;
  clip-path:polygon(0 4%,100% 0,96% 100%,0 96%);
}
.cta-box h2{ color:var(--cream); font-size:clamp(22px,3vw,32px); }
.cta-box p{ color:rgba(242,232,213,.85); max-width:620px; margin:12px auto 0; }
.cta-tel{ font-family:var(--font-mono); font-size:16px; }
.cta-tel a{ color:var(--cream); text-decoration:underline; text-underline-offset:3px; }
.cta-box .hero-cta{ justify-content:center; }
.cta-box .btn-ghost{ color:var(--cream); border-color:rgba(242,232,213,.5); }
.cta-box .btn-ghost:hover{ color:var(--paper); border-color:var(--cream); }

/* ---------- 响应式 ---------- */
@media (max-width:1080px){
  .flow-row{ grid-template-columns:repeat(2,1fr); }
  .flow-cell:nth-child(2)::after{ display:none; }
  .chip-row{ grid-template-columns:repeat(2,1fr); }
  .wall-grid{ grid-template-columns:1fr; }
  .wall-b{ margin-top:0; grid-row:auto; grid-column:auto; }
  .wall-text{ grid-row:auto; grid-column:auto; }
  .dark-row{ grid-template-columns:1fr; }
  .tip-grid{ grid-template-columns:1fr; }
}
@media (max-width:640px){
  .hero{ padding:70px 0 100px; }
  .sec{ padding:56px 0; }
  .flow-row,.chip-row{ grid-template-columns:1fr; }
  .flow-cell::after{ display:none; }
  .career-wrap{ grid-template-columns:1fr; }
  .v-title{ writing-mode:horizontal-tb; border-right:0; border-bottom:2px solid var(--tan); padding:0 0 8px; }
  .sec-dark{ clip-path:none; }
}

/* ---------- table-layout fixed 列宽（由 colgroup 迁移） ---------- */
.mat-table{ table-layout:fixed; }
.mat-table col:nth-child(1){ width:22%; }
.mat-table col:nth-child(2){ width:50%; }
.mat-table col:nth-child(3){ width:28%; }

/* ---------- 自检修复补丁（防拉伸 / 移动端间距） ---------- */
main img{ width:100%; height:auto; }
@media (max-width:640px){ .hero{ padding-top:100px; } }

/* ===== 迭代新增板块（EXTRA 要点卡） ===== */
.sec-extra{ position:relative; clip-path:polygon(0 0,100% 4%,100% 100%,0 96%); background:#EAE0CB; padding:64px 0; }
.extra-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:28px; }
.extra-4{ grid-template-columns:repeat(4,1fr); }
.extra-card{ background:var(--paper); border:1px solid var(--line); border-radius:6px;
  padding:18px; box-shadow:var(--shadow-sm); }
.extra-card b{ display:block; color:var(--brown); margin-bottom:8px; font-family:var(--font-head); }
.extra-card p{ margin:0; font-size:14px; line-height:1.8; }
@media (max-width:640px){ .extra-grid,.extra-4{ grid-template-columns:1fr; } }
