/* ============================================================
   特种工工种页专属样式（12 个工种页共用体系，页面间变换组合）
   ============================================================ */

/* ---- Hero 变体 A：全幅图 + 左文右条 ---- */
.gz-hero-a{
  position:relative; min-height:560px; display:flex; align-items:flex-end;
  color:#fff; overflow:hidden; padding:150px 0 0;
}
.gz-hero-a .hz-bg{ position:absolute; inset:0; }
.gz-hero-a .hz-bg img{ width:100%; height:100%; object-fit:cover; }
.gz-hero-a .hz-bg::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(100deg,rgba(14,16,18,.9),rgba(14,16,18,.55) 50%,rgba(14,16,18,.2));
}
.gz-hero-a .hz-inner{ position:relative; z-index:2; width:100%; max-width:1240px; margin:0 auto; padding:0 24px 70px; }
.gz-hero-a .crumb{ margin-bottom:20px; }
.gz-hero-a .crumb a{ color:#b9c0c7; }
.gz-hero-a h1{ font-size:44px; font-weight:800; letter-spacing:1px; line-height:1.25; }
.gz-hero-a .hz-sub{ margin-top:16px; max-width:640px; color:#d3d8dd; font-size:15.5px; line-height:1.9; }
.gz-hero-a .hz-cta{ display:flex; gap:14px; margin-top:30px; flex-wrap:wrap; }

/* ---- Hero 变体 B：左右分栏错位 ---- */
.gz-hero-b{
  position:relative; background:linear-gradient(180deg,#16181b,#22282e);
  color:#fff; padding:130px 0 120px; overflow:hidden;
}
.gz-hero-b::before{
  content:""; position:absolute; left:-120px; bottom:-180px; width:420px; height:420px;
  border:1px solid rgba(255,255,255,.08); border-radius:50%;
}
.gz-hero-b .hb-grid{ position:relative; z-index:2; display:grid; grid-template-columns:1.1fr .9fr; gap:60px; align-items:center; }
.gz-hero-b .crumb{ margin-bottom:20px; }
.gz-hero-b .crumb a{ color:#9aa2aa; }
.gz-hero-b h1{ font-size:42px; font-weight:800; letter-spacing:1px; line-height:1.25; }
.gz-hero-b .hz-sub{ margin-top:16px; color:#c2c8ce; font-size:15.5px; line-height:1.9; }
.gz-hero-b .hz-cta{ display:flex; gap:14px; margin-top:30px; flex-wrap:wrap; }
.gz-hero-b .hb-media{ position:relative; }
.gz-hero-b .hb-media img{
  width:100%; height:380px; object-fit:cover; border-radius:20px;
  box-shadow:var(--shadow-lg); border:6px solid rgba(255,255,255,.08);
}
.gz-hero-b .hb-media::before{
  content:""; position:absolute; right:-18px; top:-18px; width:120px; height:120px;
  border-top:2px solid var(--steel); border-right:2px solid var(--steel); border-radius:0 18px 0 0;
}
.gz-hero-b .hb-media::after{
  content:""; position:absolute; left:-18px; bottom:-18px; width:120px; height:120px;
  border-bottom:2px solid var(--steel); border-left:2px solid var(--steel); border-radius:0 0 0 18px;
}

/* ---- Hero 变体 C：上窄图 + 文本面板上叠 ---- */
.gz-hero-c{ position:relative; padding:128px 0 0; }
.gz-hero-c .hc-img{ position:relative; height:420px; overflow:hidden; border-radius:0 0 26px 26px; }
.gz-hero-c .hc-img img{ width:100%; height:100%; object-fit:cover; }
.gz-hero-c .hc-img::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg,rgba(14,16,18,.5),rgba(14,16,18,.28) 55%,transparent);
}
.gz-hero-c .hc-panel{
  position:relative; z-index:3; width:100%; max-width:1240px; margin:-120px auto 0;
  padding:0 24px;
}
.gz-hero-c .hc-box{
  background:var(--white); border:1px solid var(--line-soft); border-radius:20px;
  box-shadow:var(--shadow-lg); padding:40px 46px;
  display:grid; grid-template-columns:1.2fr .8fr; gap:36px; align-items:center;
}
.gz-hero-c .crumb{ margin-bottom:18px; }
.gz-hero-c h1{ font-size:34px; font-weight:800; letter-spacing:1px; line-height:1.3; }
.gz-hero-c .hz-sub{ margin-top:14px; color:var(--muted); font-size:15px; line-height:1.9; }
.gz-hero-c .hz-cta{ display:flex; gap:14px; margin-top:24px; flex-wrap:wrap; }
.gz-hero-c .hc-chips{ display:flex; flex-direction:column; gap:12px; }
.gz-hero-c .hc-chips li{
  display:flex; align-items:center; gap:12px; background:var(--bg);
  border:1px solid var(--line-soft); border-radius:12px; padding:13px 18px; font-size:14px;
}
.gz-hero-c .hc-chips svg{ width:20px; height:20px; color:var(--steel); flex-shrink:0; }

/* ---- 工种信息条 ---- */
.gz-meta-strip{
  position:relative; z-index:6; max-width:1240px; margin:26px auto 0; padding:0 24px;
}
.gz-meta-grid{
  background:var(--white); border:1px solid var(--line-soft); border-radius:18px;
  box-shadow:var(--shadow-lg); display:grid; grid-template-columns:repeat(4,1fr); padding:26px 10px;
}
.gz-meta-grid .gm-item{ padding:8px 22px; text-align:center; position:relative; }
.gz-meta-grid .gm-item + .gm-item::before{
  content:""; position:absolute; left:0; top:16px; bottom:16px; width:1px; background:var(--line-soft);
}
.gz-meta-grid .gm-item b{ font-size:19px; font-weight:800; display:block; letter-spacing:.5px; }
.gz-meta-grid .gm-item span{ font-size:12px; color:var(--muted); letter-spacing:1px; display:block; margin-top:4px; }

/* ---- 作业范围 ---- */
.gz-scope{ padding:84px 0; }
.gz-scope-grid{ display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.gz-scope-item{
  display:flex; gap:16px; background:var(--white); border:1px solid var(--line-soft);
  border-radius:16px; padding:22px 24px; transition:transform .25s, box-shadow .25s, border-color .25s;
}
.gz-scope-item:hover{ transform:translateY(-3px); box-shadow:var(--shadow); border-color:var(--steel); }
.gz-scope-item .gs-ico{
  width:46px; height:46px; border-radius:12px; background:var(--bg); border:1px solid var(--line);
  display:flex; align-items:center; justify-content:center; flex-shrink:0; color:var(--ink);
}
.gz-scope-item .gs-ico svg{ width:24px; height:24px; }
.gz-scope-item h3{ font-size:16px; font-weight:700; }
.gz-scope-item p{ margin-top:6px; font-size:13px; color:var(--muted); line-height:1.8; }

/* ---- 图文对撞区 ---- */
.gz-split{ padding:84px 0; }
.gz-split-grid{ display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.gz-split-grid.reverse .gz-split-media{ order:2; }
.gz-split-media{ position:relative; }
.gz-split-media img{ width:100%; height:430px; object-fit:cover; border-radius:20px; box-shadow:var(--shadow-lg); }
.gz-split-media::after{
  content:""; position:absolute; right:-22px; bottom:-22px; width:130px; height:130px;
  background:linear-gradient(135deg,var(--steel),transparent); opacity:.18; border-radius:18px; z-index:-1;
}
.gz-split-media .gs-float{
  position:absolute; left:-26px; bottom:26px; background:var(--ink); color:#fff;
  border-radius:14px; padding:16px 20px; box-shadow:var(--shadow-lg);
}
.gz-split-media .gs-float b{ font-size:22px; font-weight:800; }
.gz-split-media .gs-float span{ font-size:11.5px; color:#aab1b8; letter-spacing:1px; }
.gz-split-body .gs-tag{ font-size:12px; letter-spacing:4px; color:var(--steel); font-weight:600; }
.gz-split-body h2{ font-size:28px; font-weight:800; line-height:1.35; margin-top:12px; }
.gz-split-body h2 em{ font-style:normal; color:var(--steel); }
.gz-split-body p{ margin-top:16px; color:var(--muted); line-height:2; font-size:14.5px; }
.gz-point-list{ margin-top:24px; display:flex; flex-direction:column; gap:12px; }
.gz-point-list li{ display:flex; gap:10px; align-items:flex-start; font-size:14px; color:var(--graphite); }
.gz-point-list svg{ width:18px; height:18px; flex-shrink:0; margin-top:3px; color:var(--steel); }

/* ---- 报名条件卡 ---- */
.gz-qual{ padding:84px 0; }
.gz-qual-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.gz-qual-card{
  background:var(--white); border:1px solid var(--line-soft); border-radius:18px; padding:28px 24px;
  position:relative; overflow:hidden; transition:transform .25s, box-shadow .25s;
}
.gz-qual-card:hover{ transform:translateY(-5px); box-shadow:var(--shadow-lg); }
.gz-qual-card .gq-no{
  position:absolute; right:16px; top:6px; font-size:54px; font-weight:800;
  color:var(--line); transition:color .3s;
}
.gz-qual-card:hover .gq-no{ color:var(--bg-soft); }
.gz-qual-card .gq-ico{ width:46px; height:46px; border-radius:12px; background:var(--ink); color:#fff; display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
.gz-qual-card .gq-ico svg{ width:22px; height:22px; }
.gz-qual-card h3{ font-size:16px; font-weight:700; }
.gz-qual-card p{ margin-top:8px; font-size:13px; color:var(--muted); line-height:1.8; }

/* ---- 考核流程纵向时间线 ---- */
.gz-steps{ padding:84px 0; }
.gz-step-rail{ max-width:860px; margin:0 auto; position:relative; }
.gz-step-rail::before{
  content:""; position:absolute; left:31px; top:8px; bottom:8px; width:1px;
  background:linear-gradient(180deg,var(--steel),var(--line));
}
.gz-step{ display:flex; gap:26px; padding-bottom:38px; position:relative; }
.gz-step:last-child{ padding-bottom:0; }
.gz-step .gst-no{
  width:64px; height:64px; border-radius:18px; background:var(--white);
  border:1px solid var(--line); box-shadow:var(--shadow);
  display:flex; align-items:center; justify-content:center; font-size:20px; font-weight:800;
  color:var(--ink); flex-shrink:0; z-index:1;
}
.gz-step .gst-body{ padding-top:10px; }
.gz-step .gst-body h3{ font-size:17px; font-weight:700; }
.gz-step .gst-body p{ margin-top:8px; font-size:14px; color:var(--muted); line-height:1.9; max-width:640px; }
.gz-step .gst-body .gst-tag{ display:inline-flex; margin-top:12px; gap:8px; flex-wrap:wrap; }
.gz-step .gst-body .gst-tag span{
  font-size:12px; padding:4px 14px; border-radius:999px; background:var(--bg);
  border:1px solid var(--line); color:var(--graphite);
}

/* ---- 考核内容表 ---- */
.gz-table-wrap{ padding:84px 0; }
.gz-table{
  width:100%; border-collapse:separate; border-spacing:0; background:var(--white);
  border:1px solid var(--line-soft); border-radius:16px; overflow:hidden; box-shadow:var(--shadow);
}
.gz-table-scroll{ overflow-x:auto; }
.gz-table th{
  background:var(--ink); color:#fff; text-align:left; padding:16px 22px;
  font-size:14px; font-weight:600; letter-spacing:1px;
}
.gz-table td{ padding:15px 22px; border-top:1px solid var(--line-soft); font-size:14px; color:var(--graphite); }
.gz-table tr:nth-child(even) td{ background:var(--bg); }
.gz-table td b{ color:var(--ink); }

/* ---- FAQ / CTA 复用基础样式 ---- */

/* ---------- 响应式 ---------- */
@media (max-width: 1080px){
  .gz-hero-a h1{ font-size:34px; }
  .gz-hero-b .hb-grid{ grid-template-columns:1fr; gap:40px; }
  .gz-hero-c .hc-box{ grid-template-columns:1fr; }
  .gz-meta-grid{ grid-template-columns:repeat(2,1fr); }
  .gz-meta-grid .gm-item + .gm-item::before{ display:none; }
  .gz-meta-grid .gm-item:nth-child(3){ border-left:none; }
  .gz-scope-grid{ grid-template-columns:1fr; }
  .gz-split-grid{ grid-template-columns:1fr; gap:48px; }
  .gz-split-grid.reverse .gz-split-media{ order:0; }
  .gz-qual-grid{ grid-template-columns:repeat(2,1fr); }
  .gz-table-wrap{ overflow-x:auto; }
}
@media (max-width: 640px){
  .gz-hero-a{ min-height:520px; padding-top:120px; }
  .gz-hero-a h1{ font-size:28px; }
  .gz-hero-b h1{ font-size:30px; }
  .gz-hero-c .hc-panel{ margin-top:-90px; }
  .gz-hero-c .hc-box{ padding:26px 22px; }
  .gz-meta-grid{ grid-template-columns:1fr 1fr; padding:18px 6px; }
  .gz-qual-grid{ grid-template-columns:1fr; }
  .gz-split-media img{ height:300px; }
  .gz-split-media .gs-float{ left:12px; }
}
