/* ============================================================
   xinren-zhinan 新手报考指南 · 路线图路径叙事
   ============================================================ */

/* ---------- 首屏 ---------- */
.xz-hero{
  position:relative;overflow:hidden;
  padding:150px 0 90px;
  background:var(--mix-bg);
}
.xz-glow{position:absolute;border-radius:50%;filter:blur(60px);opacity:.5;pointer-events:none}
.xz-glow-1{width:380px;height:380px;top:-80px;right:-60px;background:radial-gradient(circle,rgba(99,176,232,.5),transparent 70%)}
.xz-glow-2{width:320px;height:320px;bottom:-60px;left:-80px;background:radial-gradient(circle,rgba(164,143,232,.45),transparent 70%)}
.xz-hero-inner{position:relative;z-index:2}
.xz-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;margin-top:26px}
.xz-hero-title{font-size:clamp(1.9rem,3.6vw,2.9rem);font-weight:800;line-height:1.3;margin:18px 0 18px}
.xz-hero-title b{color:var(--blue);font-weight:800}
.xz-hero-sub{color:var(--ink-2);font-size:1.06rem;max-width:560px}
.xz-hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.xz-hero-meta{display:flex;flex-wrap:wrap;gap:22px;margin-top:26px}
.xz-hero-meta li{display:flex;align-items:center;gap:8px;color:var(--ink-2);font-size:.94rem}
.xz-hero-meta .ico{color:var(--purple)}
.xz-hero-figure{position:relative}
.xz-hero-figure img{border-radius:var(--r-lg) var(--r-sm) var(--r-lg) var(--r-sm);box-shadow:var(--shadow-2);width:100%;height:auto}
.xz-hero-float{
  position:absolute;padding:9px 16px;border-radius:999px;background:#fff;
  box-shadow:var(--shadow);font-size:.85rem;font-weight:600;color:var(--ink-2);
}
.xz-float-a{top:18px;left:-18px;color:var(--blue)}
.xz-float-b{bottom:22px;right:-12px;color:var(--purple)}

/* ---------- 波浪分隔 ---------- */
.xz-wave{line-height:0;background:var(--paper)}
.xz-wave svg{display:block;width:100%;height:70px}
.xz-wave-rev{transform:rotate(180deg)}

/* ---------- 扫盲三卡 ---------- */
.xz-section{background:var(--paper)}
.xz-brief-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.xz-brief{
  background:#fff;border:1px solid var(--line);
  border-radius:var(--r-sm) var(--r-lg) var(--r-sm) var(--r-lg);
  padding:30px 26px;transition:transform .3s,box-shadow .3s;
}
.xz-brief:hover{transform:translateY(-6px);box-shadow:var(--shadow-2)}
.xz-brief .ico{width:34px;height:34px;color:var(--blue);margin-bottom:14px}
.xz-brief h3{font-size:1.08rem;margin-bottom:10px}
.xz-brief p{color:var(--ink-2);font-size:.94rem}

/* ---------- 路线图（弯曲路径叙事） ---------- */
.xz-path-section{background:var(--blue-bg);overflow:hidden}
.xz-glow-3{width:300px;height:300px;top:10%;right:-100px;background:radial-gradient(circle,rgba(124,111,208,.28),transparent 70%)}
.xz-path{position:relative;max-width:860px;margin:0 auto;list-style:none}
.xz-path::before{
  content:"";position:absolute;top:0;bottom:0;left:29px;width:3px;
  background:linear-gradient(var(--blue),var(--purple));border-radius:3px;opacity:.55;
}
.xz-path-step{position:relative;padding-left:78px;margin-bottom:34px}
.xz-path-step:nth-child(even){padding-right:0}
.xz-path-dot{
  position:absolute;left:0;top:2px;width:58px;height:58px;border-radius:50%;
  background:linear-gradient(135deg,var(--blue),var(--purple));color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-weight:800;font-size:1.25rem;box-shadow:var(--shadow-2);z-index:2;
}
.xz-path-card{
  background:#fff;border-radius:var(--r-lg) var(--r-sm) var(--r-lg) var(--r-sm);
  padding:26px 28px;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s;
}
.xz-path-card:hover{transform:translateX(6px);box-shadow:var(--shadow-2)}
.xz-path-card h3{font-size:1.12rem;margin-bottom:10px}
.xz-path-card p{color:var(--ink-2);font-size:.95rem}
.xz-path-link{display:inline-block;margin-top:12px;color:var(--blue);font-weight:600;font-size:.92rem}
.xz-path-link:hover{color:var(--purple)}

/* ---------- 表格区 ---------- */
.xz-table-wrap{overflow:hidden}
.xz-table-note{margin-top:16px;color:var(--ink-3);font-size:.88rem;text-align:center}

/* ---------- 易踩坑 ---------- */
.xz-pit-section{background:var(--purple-bg)}
.xz-pit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.xz-pit{
  background:#fff;border-radius:var(--r-lg) var(--r-sm) var(--r-lg) var(--r-sm);
  padding:28px 26px;border-left:5px solid var(--purple);
  transition:transform .3s,box-shadow .3s;
}
.xz-pit:hover{transform:translateY(-5px);box-shadow:var(--shadow-2)}
.xz-pit h3{font-size:1.05rem;margin-bottom:10px;color:var(--ink)}
.xz-pit p{color:var(--ink-2);font-size:.94rem}

/* ---------- 复习节奏 ---------- */
.xz-plan-section{background:var(--paper)}

/* ---------- FAQ ---------- */
.xz-faq-section{background:var(--blue-bg)}
.xz-faq-list{max-width:820px;margin:0 auto;display:grid;gap:14px}
.xz-faq{
  background:#fff;border:1px solid var(--line);border-radius:var(--r-md);
  padding:20px 24px;transition:box-shadow .3s;
}
.xz-faq:hover{box-shadow:var(--shadow)}
.xz-faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center}
.xz-faq summary::-webkit-details-marker{display:none}
.xz-faq-more{color:var(--blue);font-size:.82rem;font-weight:600}
.xz-faq p{margin-top:12px;color:var(--ink-2);font-size:.95rem}
.xz-faq p a{color:var(--blue);text-decoration:underline}

/* ---------- 关联互链 ---------- */
.xz-link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.xz-link-card{
  background:#fff;border:1px solid var(--line);border-radius:var(--r-md);
  padding:22px 22px;display:flex;flex-direction:column;gap:6px;
  transition:transform .3s,border-color .3s,box-shadow .3s;
}
.xz-link-card:hover{transform:translateY(-4px);border-color:var(--blue-2);box-shadow:var(--shadow)}
.xz-link-card{font-weight:700}
.xz-link-card small{color:var(--ink-3);font-weight:400;font-size:.85rem}

/* ---------- 资讯 ---------- */
.xz-news-section{background:var(--mix-bg)}
.xz-news-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.xz-news{background:#fff;border-radius:var(--r-lg) var(--r-sm) var(--r-lg) var(--r-sm);overflow:hidden;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s}
.xz-news:hover{transform:translateY(-6px);box-shadow:var(--shadow-2)}
.xz-news img{width:100%;height:150px;object-fit:cover}
.xz-news-body{padding:18px 18px 20px}
.xz-news-body h3{font-size:.98rem;line-height:1.5;margin:10px 0 8px}
.xz-news-body h3 a:hover{color:var(--blue)}
.xz-news-body p{color:var(--ink-3);font-size:.86rem;margin-bottom:12px}
.xz-news-more{color:var(--blue);font-size:.85rem;font-weight:600}

/* ---------- CTA ---------- */
.xz-cta-section{background:var(--paper)}
.xz-cta{
  position:relative;overflow:hidden;text-align:center;
  padding:64px 32px;border-radius:var(--r-lg);
  background:linear-gradient(135deg,#eaf4fc,#f1eefb);
}
.xz-cta-glow{position:absolute;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(124,111,208,.3),transparent 70%);top:-80px;right:-60px}
.xz-cta h2{font-size:clamp(1.4rem,2.6vw,2rem);font-weight:800;margin-bottom:14px}
.xz-cta h2 em{font-style:normal;color:var(--purple)}
.xz-cta p{color:var(--ink-2);max-width:560px;margin:0 auto 26px}
.xz-cta-btns{display:flex;justify-content:center;flex-wrap:wrap;gap:14px}
.xz-cta-mail{margin-top:18px;color:var(--ink-3);font-size:.9rem}
.xz-cta-mail a{color:var(--blue)}

/* ---------- 拿证之后 ---------- */
.xz-after-section{background:var(--blue-bg)}
.xz-after-text{max-width:840px;margin:0 auto}
.xz-after-text p{color:var(--ink-2);font-size:1rem;margin-bottom:18px}

/* ---------- 响应式 ---------- */
@media (max-width:1023px){
  .xz-hero{padding:120px 0 70px}
  .xz-hero-grid{grid-template-columns:1fr;gap:34px}
  .xz-brief-grid{grid-template-columns:1fr}
  .xz-news-grid{grid-template-columns:repeat(2,1fr)}
  .xz-link-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:767px){
  .xz-hero{padding:104px 0 56px}
  .xz-path-step{padding-left:64px}
  .xz-path-dot{width:46px;height:46px;font-size:1.05rem}
  .xz-path::before{left:22px}
  .xz-pit-grid{grid-template-columns:1fr}
  .xz-news-grid{grid-template-columns:1fr}
  .xz-link-grid{grid-template-columns:1fr}
  .xz-hero-float{position:static;display:inline-block;margin:8px 8px 0 0}
}
