/* ==========================================================================
   zhengzhou-kaoshi.html 郑州考试批次私有样式
   版式：横幅图 hero（图底遮罩文案）+ 批次日历表 + 理论/实操双卡
        + 三栏考点卡 + 清单双栏 + 折叠 FAQ + 互链卡
   ========================================================================== */

/* ---------- Hero：横幅图 ---------- */
.ks-hero{padding-top:calc(var(--topbar-h) + var(--header-h))}
.ks-hero-banner{position:relative;overflow:hidden}
.ks-hero-banner>img{width:100%;height:auto;display:block}
.ks-hero-mask{
  position:absolute;inset:0;
  background:linear-gradient(100deg,rgba(30,42,34,.88) 0%,rgba(30,42,34,.62) 55%,rgba(30,42,34,.30) 100%);
  display:flex;align-items:center;
}
.ks-hero-mask .container{padding-top:60px;padding-bottom:60px;max-width:640px}
.ks-kicker{display:flex;align-items:center;gap:12px;font-size:13.5px;letter-spacing:3px;color:#e7d9b8;font-weight:600;margin-bottom:18px}
.ks-kline{width:44px;height:2px;background:var(--wood-light);display:inline-block}
.ks-title{font-size:clamp(28px,4vw,46px);line-height:1.28;letter-spacing:2px;color:#fbf7ee;margin-bottom:18px;animation:ksLine .9s var(--ease) both}
@keyframes ksLine{from{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}
.ks-desc{font-size:15px;line-height:2;color:#e6e3d5;margin-bottom:26px;max-width:560px}
.ks-actions{display:flex;gap:14px;flex-wrap:wrap}

/* ---------- 区块 ---------- */
.ks-sec{padding:80px 0}
.ks-sec-alt{background:var(--white)}
.ks-sec-green{background:linear-gradient(160deg,var(--cream-2),#f3ecdb)}
.ks-note{margin-top:16px;font-size:13.5px;color:var(--ink-faint);border-left:3px solid var(--wood-light);padding:4px 0 4px 14px}

/* ---------- 考试内容双卡 ---------- */
.ks-exam-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:960px;margin:0 auto}
.ks-exam{position:relative;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:36px 30px;box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.ks-exam:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}
.ks-exam::after{content:"";position:absolute;left:0;bottom:0;height:4px;width:100%;background:var(--green)}
.ks-exam-badge{display:inline-block;font-size:13px;font-weight:700;letter-spacing:2px;color:#fff;background:var(--green);border-radius:999px;padding:6px 16px;margin-bottom:16px}
.ks-exam-badge-2{background:var(--wood)}
.ks-exam h3{font-size:21px;margin-bottom:12px;letter-spacing:1px}
.ks-exam p{font-size:14.5px;line-height:1.95;color:var(--ink-soft)}

/* ---------- 考点卡 ---------- */
.ks-site-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ks-site{background:var(--cream-3);border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;transition:transform .35s var(--ease),box-shadow .35s var(--ease),background .35s}
.ks-site:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);background:#fff}
.ks-site-ic{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--green),var(--green-deep));margin-bottom:18px}
.ks-site h3{font-size:18px;margin-bottom:10px}
.ks-site p{font-size:14px;line-height:1.85;color:var(--ink-soft)}

/* ---------- 考前清单双栏 ---------- */
.ks-check-wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.ks-checklist{display:grid;gap:14px}
.ks-checklist li{display:flex;align-items:flex-start;gap:12px;font-size:15.5px;color:var(--ink-soft);line-height:1.7}
.ks-ck{flex-shrink:0;width:22px;height:22px;border-radius:7px;margin-top:3px;background:var(--green);position:relative}
.ks-ck::after{content:"";position:absolute;left:7px;top:3px;width:6px;height:11px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(42deg)}

/* ---------- FAQ ---------- */
.ks-faq{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:14px}
.ks-faq-item{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 22px;box-shadow:var(--shadow-sm)}
.ks-faq-item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 4px;font-size:16px;font-weight:600;color:var(--ink)}
.ks-faq-item summary::-webkit-details-marker{display:none}
.ks-faq-item summary::after{content:"+";font-size:22px;color:var(--wood);transition:transform .3s var(--ease)}
.ks-faq-item[open] summary::after{transform:rotate(45deg)}
.ks-faq-item p{padding:2px 4px 20px;font-size:14.5px;line-height:1.95;color:var(--ink-soft)}

/* ---------- 互链 ---------- */
.ks-rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ks-rel-card{background:var(--cream-3);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s}
.ks-rel-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);background:#fff}
.ks-rel-card h3{font-size:17.5px;margin-bottom:8px}
.ks-rel-card p{font-size:14px;color:var(--ink-soft);line-height:1.75;margin-bottom:14px}
.ks-rel-more{font-size:13.5px;color:var(--green-deep);font-weight:600;letter-spacing:1px}

/* ---------- 响应式 ---------- */
@media (max-width:1024px){
  .ks-exam-grid{grid-template-columns:1fr}
  .ks-site-grid{grid-template-columns:1fr}
  .ks-check-wrap{grid-template-columns:1fr;gap:32px}
  .ks-rel-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:680px){
  .ks-hero-mask .container{padding-top:36px;padding-bottom:36px}
  .ks-sec{padding:60px 0}
  .ks-rel-grid{grid-template-columns:1fr}
}
