/* ============================================================
   qiye-zizhi.css —— 企业资质证书代办（L7 左固定右流动原型）
   左侧 sticky 竖排视觉列，右侧内容流式滚动
   ============================================================ */

/* ---------- Hero：不对称左右分割 ---------- */
.zz-hero{
  padding-top:var(--header-h);
}
.zz-hero__split{
  display:grid; grid-template-columns:1fr 1fr; min-height:78vh;
}
.zz-hero__panel{
  background:var(--green-950); color:var(--cream-50);
  display:flex; flex-direction:column; justify-content:center;
  padding:clamp(40px,6vw,90px) clamp(28px,5vw,80px);
}
.zz-hero__panel .breadcrumb{ color:rgba(251,248,241,.65); }
.zz-hero__panel .breadcrumb a{ color:var(--cream-100); }
.zz-hero__eyebrow{ font-size:13px; letter-spacing:.34em; color:var(--brown-500); margin:26px 0 16px; }
.zz-hero__panel h1{ color:var(--cream-50); font-size:clamp(32px,4.4vw,54px); line-height:1.3; }
.zz-hero__lead{ margin-top:20px; color:rgba(251,248,241,.82); font-size:16.5px; line-height:2.05; max-width:520px; }
.zz-hero__actions{ display:flex; flex-wrap:wrap; gap:14px; margin-top:34px; }
.zz-hero__media{ position:relative; }
.zz-hero__media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.zz-hero__media::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(90deg,rgba(27,42,33,.35),rgba(27,42,33,0) 40%);
}

/* ---------- L7 主体布局 ---------- */
.zz-body{
  display:grid; grid-template-columns:150px 1fr; gap:clamp(24px,4vw,60px);
  align-items:start;
}
.zz-rail{
  position:sticky; top:calc(var(--header-h) + 24px);
  display:flex; flex-direction:column; gap:4px;
  padding:26px 0; border-left:2px solid var(--cream-200);
}
.zz-rail__mark{
  writing-mode:vertical-rl; font-family:var(--font-serif);
  font-size:22px; letter-spacing:.5em; color:var(--green-800);
  margin-bottom:22px; padding-left:18px;
}
.zz-rail__link{
  font-size:13.5px; color:var(--muted); padding:9px 0 9px 18px;
  border-left:2px solid transparent; margin-left:-2px;
  transition:all .3s var(--ease);
}
.zz-rail__link:hover{ color:var(--brown-600); border-left-color:var(--brown-500); }
.zz-main{ min-width:0; }

/* ---------- 关系说明 + 配图 ---------- */
.zz-relation h2{ margin:10px 0 18px; }
.zz-relation p{ margin-bottom:16px; font-size:15.5px; }
.zz-relation__pic{ margin:26px 0 0; }
.zz-relation__pic img{ border-radius:var(--radius-m); box-shadow:var(--shadow-md); }
.zz-relation__pic figcaption{ font-size:13px; color:var(--muted); margin-top:10px; padding-left:4px; }

/* ---------- 代办清单：竖线列表 ---------- */
.zz-list__items{
  border-top:1px solid var(--line);
}
.zz-list__items li{
  display:grid; grid-template-columns:1fr; gap:6px;
  padding:24px 8px; border-bottom:1px solid var(--line);
  transition:background .3s var(--ease);
}
.zz-list__items li:hover{ background:rgba(176,141,102,.06); }
.zz-list__items b{ font-family:var(--font-serif); font-size:18px; color:var(--green-900); }
.zz-list__items p{ font-size:15px; }
.zz-list__items a{ color:var(--brown-600); text-decoration:underline; text-underline-offset:3px; }

/* ---------- 流程：横向四步 ---------- */
.zz-flow__steps{
  display:grid; grid-template-columns:repeat(4,1fr); gap:20px;
  counter-reset:zzf;
}
.zz-fstep{
  border:1px solid var(--line); border-top:3px solid var(--brown-500);
  background:var(--white); padding:24px 20px; border-radius:0 0 var(--radius-m) var(--radius-m);
}
.zz-fstep__no{
  font-family:var(--font-serif); font-size:30px; color:rgba(44,74,58,.18); font-weight:700; line-height:1;
}
.zz-fstep h3{ font-size:17px; margin:12px 0 8px; }
.zz-fstep p{ font-size:14px; }

/* ---------- 配置建议表 ---------- */
.zz-config__wrap .tbl{ table-layout:fixed; }
.zz-config__wrap .tbl th{ font-size:14px; }

/* ---------- 资质类型 ---------- */
.zz-types__grid{ display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.zz-type{
  background:var(--white); border-radius:var(--radius-m); padding:26px 24px;
  box-shadow:var(--shadow-sm); border:1px solid var(--line);
  position:relative; overflow:hidden;
}
.zz-type::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--green-700);
}
.zz-type h3{ font-size:18px; margin-bottom:10px; }
.zz-type p{ font-size:14.5px; }
.zz-type a{ color:var(--brown-600); text-decoration:underline; text-underline-offset:3px; }

/* ---------- FAQ：线框折叠 ---------- */
.zz-faq__list{ border-top:1px solid var(--line-strong); }
.zz-faq-item{ border-bottom:1px solid var(--line-strong); }
.zz-faq-item summary{
  cursor:pointer; list-style:none; padding:20px 4px;
  font-family:var(--font-serif); font-size:16.5px; font-weight:700; color:var(--green-900);
  display:flex; justify-content:space-between; align-items:center; gap:14px;
}
.zz-faq-item summary::-webkit-details-marker{ display:none; }
.zz-faq-item summary::after{
  content:"+"; flex:none; font-family:var(--font-sans); font-size:22px; font-weight:400;
  color:var(--brown-600); transition:transform .35s var(--ease);
}
.zz-faq-item[open] summary::after{ transform:rotate(45deg); }
.zz-faq-item p{ padding:0 4px 22px; font-size:15px; }

/* ---------- CTA：大圆角卡片 ---------- */
.zz-booking{ padding-top:20px; }
.zz-booking__card{
  background:var(--green-900); border-radius:var(--radius-l);
  display:grid; grid-template-columns:1fr 1.1fr; overflow:hidden;
}
.zz-booking__head{ padding:clamp(30px,4vw,50px); color:var(--cream-50); }
.zz-booking__head .eyebrow{ color:var(--brown-500); }
.zz-booking__head h2{ color:var(--cream-50); margin:10px 0 14px; }
.zz-booking__head p{ color:rgba(251,248,241,.78); }
.zz-booking__phone{ margin-top:20px; }
.zz-booking__phone a{ color:var(--brown-500); font-size:22px; font-weight:700; font-family:var(--font-serif); }
.zz-booking__form{
  background:var(--cream-50); padding:clamp(26px,3.5vw,44px);
  display:grid; grid-template-columns:1fr 1fr; gap:16px; align-content:start;
}
.zz-booking__form .field:nth-child(3),.zz-booking__form .field:nth-child(4),.zz-booking__form .field:last-child{ grid-column:1 / -1; }

/* ---------- 响应式 ---------- */
@media (max-width:1024px){
  .zz-hero__split{ grid-template-columns:1fr; min-height:0; }
  .zz-hero__media{ min-height:320px; }
  .zz-body{ grid-template-columns:1fr; }
  .zz-rail{
    position:static; flex-direction:row; flex-wrap:wrap; gap:8px;
    border-left:0; border-bottom:1px solid var(--line); padding:14px 0;
  }
  .zz-rail__mark{ display:none; }
  .zz-rail__link{ padding:6px 14px; border:1px solid var(--line); border-radius:999px; }
  .zz-flow__steps{ grid-template-columns:1fr 1fr; }
  .zz-booking__card{ grid-template-columns:1fr; }
}
@media (max-width:640px){
  .zz-flow__steps,.zz-types__grid,.zz-booking__form{ grid-template-columns:1fr; }
}
