/* ============================================================
   加入我们 join.css —— 壹捌玖网络科技
   布局：Hero / 图左文化右 / 岗位行卡（职责+要求+投递按钮）/
   福利图标网格 / 培养三步 / CTA
   ============================================================ */

/* ---------- 1. Hero ---------- */
.hero{
  position:relative;min-height:84vh;display:flex;align-items:center;
  overflow:hidden;background:var(--ink);
}
.hero-bg{background-position:center 35%}
.hero-veil{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(90deg,rgba(20,20,20,.9) 0%,rgba(20,20,20,.6) 55%,rgba(20,20,20,.28) 100%),
    linear-gradient(0deg,rgba(20,20,20,.5),transparent 50%);
}
.hero-inner{position:relative;z-index:3;padding-top:130px;padding-bottom:90px;max-width:760px}
.crumb{display:flex;align-items:center;gap:10px;color:#C9C0AF;font-size:13px;margin-bottom:26px;opacity:0;animation:fadeUp .6s .1s ease forwards}
.crumb a{color:#EDE6DA}
.crumb a:hover{color:var(--coffee-bright)}
.crumb em{color:var(--coffee-bright);font-style:normal;font-weight:700}
.hero-title{color:#fff;font-size:clamp(36px,5.4vw,62px);font-weight:900;line-height:1.14;letter-spacing:-.02em;margin-bottom:22px}
.ht-line{display:block;overflow:hidden;opacity:0}
.ht-line:nth-child(1){animation:slideUp .75s .22s cubic-bezier(.22,.68,.4,1) forwards}
.ht-line:nth-child(2){animation:slideUp .75s .4s cubic-bezier(.22,.68,.4,1) forwards}
.ht-gold{color:var(--coffee)}
.hero-sub{color:#D8CFBF;font-size:clamp(15px,1.7vw,18px);line-height:1.9;margin-bottom:34px;opacity:0;animation:fadeUp .7s .55s ease forwards}
.hero-cta{display:flex;gap:16px;flex-wrap:wrap;opacity:0;animation:fadeUp .7s .7s ease forwards}
@keyframes slideUp{from{opacity:0;transform:translateY(44px)}to{opacity:1;transform:none}}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
.scroll-hint{position:absolute;left:50%;bottom:24px;transform:translateX(-50%);width:26px;height:44px;border:2px solid rgba(255,255,255,.4);border-radius:14px;z-index:4;display:flex;justify-content:center;padding-top:8px}
.scroll-hint span{width:3px;height:9px;border-radius:3px;background:#fff;animation:hintDrop 1.8s ease infinite}
@keyframes hintDrop{0%{opacity:0;transform:translateY(0)}35%{opacity:1}100%{opacity:0;transform:translateY(14px)}}
@media (max-width:640px){
  .hero{min-height:auto;padding-bottom:40px}
  .hero-cta .btn{width:100%}
  .scroll-hint{display:none}
}

/* ---------- 2. 工作环境与文化 ---------- */
.env{background:#fff}
.env-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}
.env-media img{border-radius:24px;box-shadow:var(--shadow-lg)}
.env-text p{font-size:15px;color:var(--text-2);line-height:2;margin-top:16px}
.env-points{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}
.env-points li{border-left:3px solid var(--coffee);padding-left:14px}
.env-points b{display:block;font-size:17px;color:var(--ink);margin-bottom:4px}
.env-points span{font-size:13px;color:var(--text-2);line-height:1.7}
@media (max-width:960px){.env-inner{grid-template-columns:1fr;gap:40px}}

/* ---------- 3. 在招岗位 ---------- */
.jobs{background:var(--coffee-bg)}
.jb-list{display:grid;gap:18px;margin-top:36px}
.jb-row{
  position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;
  padding:26px 28px;display:grid;gap:16px;transition:all .4s;
}
.jb-row:hover{border-color:var(--coffee);box-shadow:var(--shadow-md)}
.jb-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}
.jb-head h3{font-size:19px;margin-bottom:4px}
.jb-meta{font-size:13px;color:var(--text-2)}
.jb-salary{font-size:18px;font-weight:900;color:var(--coffee-deep);white-space:nowrap;font-variant-numeric:tabular-nums}
.jb-detail{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.jb-detail b{
  display:inline-block;font-size:12px;font-weight:800;color:#fff;background:var(--grad-ink);
  padding:3px 10px;border-radius:6px;margin-bottom:8px;
}
.jb-detail p{font-size:13.5px;color:var(--text-2);line-height:1.8}
.jb-apply{justify-self:start}
@media (max-width:720px){.jb-detail{grid-template-columns:1fr}}

/* ---------- 4. 福利待遇 ---------- */
.perks{background:#fff}
.pk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}
.pk-card{
  background:var(--coffee-bg);border-radius:18px;padding:30px 26px;transition:all .4s;
}
.pk-card:hover{background:#fff;transform:translateY(-6px);box-shadow:var(--shadow-md)}
.pk-ic{
  width:50px;height:50px;border-radius:14px;background:var(--ink);color:var(--coffee-bright);
  display:flex;align-items:center;justify-content:center;margin-bottom:16px;transition:all .4s;
}
.pk-ic svg{width:25px;height:25px}
.pk-card:hover .pk-ic{background:var(--grad-coffee);color:#fff}
.pk-card h3{font-size:17px;margin-bottom:8px}
.pk-card p{font-size:13.5px;color:var(--text-2);line-height:1.8}
@media (max-width:1024px){.pk-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.pk-grid{grid-template-columns:1fr}}

/* ---------- 5. 培养体系 ---------- */
.grow{background:linear-gradient(180deg,#fff 0%,var(--coffee-bg) 100%)}
.gw-row{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}
.gw-item{
  background:#fff;border-radius:18px;padding:32px 28px;position:relative;overflow:hidden;
  border-top:4px solid var(--grad-coffee);box-shadow:var(--shadow-sm);transition:all .4s;
}
.gw-item:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.gw-item b{font-size:13px;font-weight:900;letter-spacing:.2em;color:var(--coffee-deep)}
.gw-item h3{font-size:19px;margin:10px 0 8px}
.gw-item p{font-size:13.5px;color:var(--text-2);line-height:1.85}
@media (max-width:900px){.gw-row{grid-template-columns:1fr}}

/* ---------- 6. CTA ---------- */
.cta{position:relative;overflow:hidden;background:var(--ink);padding:120px 0}
.cta-bg{background-position:center 40%}
.cta-veil{position:absolute;inset:0;background:rgba(20,20,20,.8);z-index:1}
.cta-inner{position:relative;z-index:2;text-align:center}
.cta-title{color:#fff;font-size:clamp(26px,4vw,40px);font-weight:900;margin-bottom:18px}
.cta-sub{color:#D8CFBF;font-size:16px;margin-bottom:38px}
.cta-row{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}
@media (max-width:640px){.cta-row .btn{width:100%}}
