/* ============================================================
   yikeyichi.com · zhengce-fagui.html 专属样式
   布局原型：L4 大留白禅意 —— 细线框 / 竖排装饰 / 模块细线分隔
   ============================================================ */

/* ---------- Hero：竖排大字 + 偏移小图 ---------- */
.pg-hero{
  position:relative; padding:calc(var(--header-h) + 70px) 0 90px;
  background:var(--cream-50); overflow:hidden;
  border-bottom:1px solid var(--line);
}
.pg-hero__inner{ position:relative; }
.pg-hero .breadcrumb{ margin-bottom:34px; }
.pg-hero__grid{
  display:grid; grid-template-columns:1.25fr .85fr; gap:clamp(30px,5vw,70px);
  align-items:end;
}
.pg-hero__eyebrow{
  font-size:13px; letter-spacing:.42em; color:var(--brown-600); margin-bottom:22px;
}
.pg-hero__text h1{
  font-size:clamp(40px,6.4vw,78px); line-height:1.18; letter-spacing:.04em;
  color:var(--green-950); margin-bottom:24px;
}
.pg-hero__text h1 em{
  font-style:normal; color:transparent;
  -webkit-text-stroke:1.5px var(--green-800);
}
.pg-hero__lead{
  max-width:560px; font-size:16px; line-height:2.05; color:var(--ink-soft); margin-bottom:34px;
}
.pg-hero__actions{ display:flex; flex-wrap:wrap; gap:16px; }
.pg-hero__pic{ position:relative; margin-bottom:10px; }
.pg-hero__pic img{
  width:100%; height:340px; object-fit:cover; border-radius:6px;
  box-shadow:var(--shadow-md); transform:translateY(24px);
}
.pg-hero__pic::before{
  content:""; position:absolute; inset:0; border:1px solid var(--brown-500);
  transform:translate(16px,-16px); z-index:-1; border-radius:6px;
}
.pg-hero__pic figcaption{
  margin-top:44px; font-size:12.5px; letter-spacing:.3em; color:var(--muted);
}
.pg-hero__vertical{
  position:absolute; right:2%; top:50%; transform:translateY(-50%);
  writing-mode:vertical-rl; font-family:var(--font-serif);
  font-size:15px; letter-spacing:.6em; color:var(--line-strong);
}

/* ---------- 政策分类导航：细线卡片 ---------- */
.cats__grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:0;
  border-top:1px solid var(--line-strong); border-left:1px solid var(--line-strong);
}
.cat{
  display:block; padding:30px 26px 26px; border-right:1px solid var(--line-strong);
  border-bottom:1px solid var(--line-strong); background:var(--cream-50);
  position:relative; transition:background .4s var(--ease);
}
.cat:hover{ background:var(--cream-100); }
.cat__no{
  font-family:var(--font-serif); font-size:14px; color:var(--brown-500);
  letter-spacing:.2em;
}
.cat h3{ font-size:18px; margin:14px 0 10px; color:var(--green-900); }
.cat p{ font-size:13.5px; line-height:1.9; color:var(--muted); min-height:78px; }
.cat__more{
  font-style:normal; font-size:13px; color:var(--green-700); margin-top:14px;
  display:inline-block; opacity:0; transform:translateX(-8px);
  transition:all .35s var(--ease);
}
.cat:hover .cat__more{ opacity:1; transform:none; }

/* ---------- 制度要点速览表 ---------- */
.snapshot__wrap{
  overflow-x:auto; border-top:2px solid var(--green-900);
  border-bottom:1px solid var(--line-strong); background:var(--cream-50);
}
.snapshot__wrap .tbl{ min-width:680px; }
.snapshot__wrap .tbl td a{ color:var(--green-700); font-weight:600; }
.snapshot__note{
  margin-top:20px; font-size:13px; color:var(--muted); line-height:1.9;
  padding-left:14px; border-left:2px solid var(--brown-500);
}

/* ---------- 政策变化提醒：细线条目 ---------- */
.alerts__list{ border-top:1px solid var(--line-strong); }
.alert{
  display:grid; grid-template-columns:90px 1fr; gap:26px;
  padding:28px 6px; border-bottom:1px solid var(--line); align-items:start;
}
.alert__tag{
  display:inline-flex; justify-content:center; padding:5px 0;
  font-size:12px; letter-spacing:.2em; color:var(--brown-700);
  border:1px solid var(--brown-500); border-radius:2px; height:fit-content;
}
.alert h3{ font-size:19px; margin-bottom:8px; }
.alert p{ font-size:14.5px; line-height:1.95; }
.alert p a{ color:var(--green-700); font-weight:600; }

/* ---------- 官方渠道 ---------- */
.channels__grid{
  display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(30px,5vw,64px);
  align-items:center;
}
.channels__copy .eyebrow{
  display:inline-flex; align-items:center; gap:10px;
  font-size:13px; letter-spacing:.32em; color:var(--brown-600); margin-bottom:14px;
}
.channels__copy .eyebrow::before{ content:""; width:34px; height:1px; background:var(--brown-500); }
.channels__copy h2{ margin-bottom:16px; }
.channels__copy > p{ margin-bottom:24px; }
.channels__list{ margin-bottom:28px; }
.channels__list li{
  padding:16px 0; border-top:1px solid var(--line);
  display:grid; grid-template-columns:150px 1fr; gap:18px;
}
.channels__list li:last-child{ border-bottom:1px solid var(--line); }
.channels__list b{ font-size:15px; color:var(--green-800); }
.channels__list span{ font-size:14px; color:var(--muted); line-height:1.85; }
.channels__pic img{
  width:100%; height:420px; object-fit:cover; border-radius:6px;
  box-shadow:var(--shadow-md);
}

/* ---------- FAQ：细线折叠 ---------- */
.faq__list{ max-width:860px; margin-inline:auto; border-top:1px solid var(--line-strong); }
.faq-item{ border-bottom:1px solid var(--line-strong); }
.faq-item summary{
  list-style:none; cursor:pointer; display:flex; align-items:center;
  justify-content:space-between; gap:20px; padding:22px 4px;
  font-family:var(--font-serif); font-size:17.5px; color:var(--green-900);
  transition:color .3s var(--ease);
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item summary span{
  position:relative; width:18px; height:18px; flex:none;
}
.faq-item summary span::before,.faq-item summary span::after{
  content:""; position:absolute; background:var(--brown-600);
  transition:transform .35s var(--ease);
}
.faq-item summary span::before{ left:0; top:8px; width:18px; height:1.5px; }
.faq-item summary span::after{ left:8px; top:0; width:1.5px; height:18px; }
.faq-item[open] summary span::after{ transform:scaleY(0); }
.faq-item[open] summary{ color:var(--brown-700); }
.faq-item p{
  padding:0 40px 24px 4px; font-size:14.5px; line-height:2; color:var(--ink-soft);
}

/* ---------- 预约 CTA：线框 ---------- */
.booking__box{
  display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,5vw,60px);
  border:1.5px solid var(--line-strong); border-radius:var(--radius-l);
  padding:clamp(34px,5vw,60px); background:var(--cream-50);
  position:relative;
}
.booking__box::before{
  content:""; position:absolute; top:-1px; left:40px; right:40px; height:3px;
  background:var(--brown-500); border-radius:3px;
}
.booking__copy .eyebrow{
  display:inline-flex; align-items:center; gap:10px;
  font-size:13px; letter-spacing:.32em; color:var(--brown-600); margin-bottom:14px;
}
.booking__copy .eyebrow::before{ content:""; width:34px; height:1px; background:var(--brown-500); }
.booking__copy h2{ margin-bottom:14px; }
.booking__copy > p{ margin-bottom:18px; }
.booking__phone{ font-size:15px; color:var(--ink); }
.booking__phone a{ font-family:var(--font-serif); font-size:24px; color:var(--green-800); font-weight:700; }
.booking__form{ display:flex; flex-direction:column; gap:16px; }

/* ---------- 响应式 ---------- */
@media (max-width:1024px){
  .pg-hero__grid{ grid-template-columns:1fr; }
  .pg-hero__pic img{ transform:none; height:280px; }
  .pg-hero__vertical{ display:none; }
  .cats__grid{ grid-template-columns:repeat(2,1fr); }
  .channels__grid{ grid-template-columns:1fr; }
  .booking__box{ grid-template-columns:1fr; }
}
@media (max-width:640px){
  .cats__grid{ grid-template-columns:1fr; }
  .alert{ grid-template-columns:1fr; gap:10px; }
  .channels__list li{ grid-template-columns:1fr; gap:4px; }
}
