/* ============================================================
   zhengshu-chaxun.css —— L1 斜切对角
   墨绿斜块压图、错位阶梯、对角装饰线
   ============================================================ */

/* ---------- Hero：斜切对角 ---------- */
.qcx-hero{
  position:relative; min-height:94vh; display:flex; align-items:flex-end;
  padding:calc(var(--header-h) + 40px) 0 90px; overflow:hidden;
  background:var(--green-950);
}
.qcx-hero__media{
  position:absolute; inset:0;
  clip-path:polygon(0 0,100% 0,100% 72%,0 100%);
}
.qcx-hero__media img{ width:100%; height:100%; object-fit:cover; }
.qcx-hero__veil{
  position:absolute; inset:0;
  background:linear-gradient(115deg,rgba(27,42,33,.92) 0%,rgba(27,42,33,.62) 42%,rgba(27,42,33,.15) 100%);
  clip-path:polygon(0 0,100% 0,100% 72%,0 100%);
}
.qcx-hero__content{ position:relative; z-index:2; }
.qcx-hero .breadcrumb{ color:rgba(251,248,241,.7); margin-bottom:26px; }
.qcx-hero .breadcrumb a{ color:var(--cream-100); }
.qcx-hero .breadcrumb .cur{ color:var(--brown-500); }
.qcx-hero__eyebrow{
  font-size:13px; letter-spacing:.4em; color:var(--brown-500); margin-bottom:18px;
}
.qcx-hero h1{ color:var(--cream-50); margin-bottom:22px; }
.qcx-hero__lead{ max-width:640px; font-size:17px; color:rgba(251,248,241,.82); margin-bottom:34px; }
.qcx-hero__actions{ display:flex; flex-wrap:wrap; gap:14px; }
.qcx-hero__tag{
  position:absolute; right:6%; bottom:12%; z-index:2;
  display:flex; flex-direction:column; gap:6px; align-items:flex-end;
  transform:rotate(-8deg);
}
.qcx-hero__tag span{
  font-family:var(--font-serif); font-size:30px; color:var(--cream-100);
  border:1.5px solid var(--brown-500); padding:10px 20px; letter-spacing:.14em;
}
.qcx-hero__tag b{ font-size:13px; letter-spacing:.3em; color:var(--brown-500); font-weight:600; }

/* ---------- Why：错位图文 ---------- */
.qcx-why{ padding-top:clamp(70px,9vw,120px); }
.qcx-why__grid{
  display:grid; grid-template-columns:1fr 1.15fr; gap:clamp(36px,6vw,80px); align-items:center;
}
.qcx-why__pic{ position:relative; margin-top:46px; }
.qcx-why__pic img{
  border-radius:var(--radius-m); box-shadow:var(--shadow-lg);
  transform:rotate(-2deg); width:100%;
}
.qcx-why__float{
  position:absolute; right:-26px; bottom:-30px;
  background:var(--green-900); color:var(--cream-50);
  padding:22px 28px; border-radius:var(--radius-m); box-shadow:var(--shadow-md);
}
.qcx-why__float b{ font-family:var(--font-serif); font-size:34px; color:var(--brown-500); display:block; line-height:1.1; }
.qcx-why__float span{ font-size:13px; color:rgba(251,248,241,.75); line-height:1.7; }
.qcx-why__copy p{ margin-bottom:16px; }
.qcx-why__points{ margin-top:20px; display:grid; gap:12px; }
.qcx-why__points li{
  position:relative; padding-left:26px; color:var(--ink-soft);
}
.qcx-why__points li::before{
  content:""; position:absolute; left:0; top:12px; width:14px; height:2px; background:var(--brown-500);
}
.qcx-why__points a{ color:var(--green-700); font-weight:600; }
.qcx-why__points a:hover{ color:var(--brown-600); }

/* ---------- Channel：对角卡片 ---------- */
.qcx-channel__cards{
  display:grid; grid-template-columns:repeat(3,1fr); gap:26px;
}
.qcx-ch-card{
  background:var(--cream-50); border:1px solid var(--line); border-radius:var(--radius-m);
  padding:34px 28px 30px; position:relative; overflow:hidden;
  transition:transform .4s var(--ease),box-shadow .4s var(--ease);
}
.qcx-ch-card::after{
  content:""; position:absolute; left:0; top:0; width:100%; height:4px;
  background:linear-gradient(90deg,var(--green-700),var(--brown-500));
}
.qcx-ch-card:nth-child(2){ transform:translateY(26px); }
.qcx-ch-card:hover{ transform:translateY(-6px); box-shadow:var(--shadow-md); }
.qcx-ch-card:nth-child(2):hover{ transform:translateY(20px); }
.qcx-ch-card__no{
  font-family:var(--font-serif); font-size:44px; color:rgba(76,114,90,.22); line-height:1;
}
.qcx-ch-card h3{ margin:14px 0 10px; }
.qcx-ch-card p{ font-size:14.5px; }
.qcx-ch-card p a{ color:var(--green-700); font-weight:600; }
.qcx-ch-card__tip{
  display:inline-block; margin-top:18px; font-size:12.5px; color:var(--brown-700);
  background:rgba(176,141,102,.14); padding:5px 12px; border-radius:var(--radius-round);
}
.qcx-channel__warn{
  margin-top:46px; display:flex; gap:14px; align-items:flex-start;
  background:rgba(176,141,102,.10); border-left:3px solid var(--brown-500);
  padding:20px 24px; border-radius:0 var(--radius-s) var(--radius-s) 0;
}
.qcx-channel__warn svg{ width:22px; height:22px; flex:none; color:var(--brown-600); margin-top:4px; }
.qcx-channel__warn p{ font-size:14.5px; }
.qcx-channel__warn a{ color:var(--green-700); font-weight:600; }

/* ---------- Steps：错位阶梯 ---------- */
.qcx-steps__ladder{ display:grid; gap:0; max-width:860px; margin-inline:auto; }
.qcx-step{
  display:grid; grid-template-columns:90px 1fr; gap:26px; align-items:flex-start;
  padding:26px 0; border-bottom:1px solid var(--line);
}
.qcx-step:nth-child(even){ margin-left:64px; }
.qcx-step__num{
  font-family:var(--font-serif); font-size:40px; color:var(--cream-200);
  -webkit-text-stroke:1px var(--brown-500); line-height:1;
}
.qcx-step__body h3{ margin-bottom:6px; }
.qcx-step__body p{ font-size:15px; }

/* ---------- Read：深绿结果面板 ---------- */
.qcx-read__panel{
  background:rgba(251,248,241,.05); border:1px solid rgba(251,248,241,.16);
  border-radius:var(--radius-m); overflow:hidden;
}
.qcx-read__row{
  display:grid; grid-template-columns:220px 1fr; gap:20px;
  padding:20px 28px; border-bottom:1px solid rgba(251,248,241,.10);
}
.qcx-read__row:last-child{ border-bottom:0; }
.qcx-read__row b{
  font-family:var(--font-serif); color:var(--brown-500); font-size:16px; letter-spacing:.05em;
}
.qcx-read__row span{ color:rgba(251,248,241,.78); font-size:15px; }
.qcx-read__row a{ color:var(--brown-500); text-decoration:underline; }

/* ---------- Corp：错位图文 ---------- */
.qcx-corp__grid{
  display:grid; grid-template-columns:1.05fr 1fr; gap:clamp(36px,6vw,70px); align-items:center;
}
.qcx-corp__copy p{ margin-bottom:14px; }
.qcx-corp__list{ margin:18px 0; display:grid; gap:10px; counter-reset:corp; }
.qcx-corp__list li{
  counter-increment:corp; position:relative; padding-left:38px; color:var(--ink-soft);
}
.qcx-corp__list li::before{
  content:counter(corp); position:absolute; left:0; top:2px;
  width:24px; height:24px; border-radius:50%; background:var(--green-800); color:var(--cream-50);
  font-size:12.5px; display:flex; align-items:center; justify-content:center;
}
.qcx-corp__note{ font-size:14.5px; }
.qcx-corp__note a{ color:var(--green-700); font-weight:600; }
.qcx-corp__pic img{
  border-radius:var(--radius-m); box-shadow:var(--shadow-lg); transform:rotate(1.5deg);
}

/* ---------- Empty ---------- */
.qcx-empty__inner{
  background:var(--cream-50); border:1px solid var(--line); border-radius:var(--radius-l);
  padding:clamp(34px,5vw,60px);
}
.qcx-empty__inner > p{ margin:14px 0 28px; }
.qcx-empty__grid{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.qcx-empty__item{
  border:1px dashed var(--line-strong); border-radius:var(--radius-m); padding:22px 24px;
}
.qcx-empty__item b{
  display:block; font-family:var(--font-serif); color:var(--green-800); margin-bottom:8px; font-size:17px;
}
.qcx-empty__item span{ font-size:14px; color:var(--ink-soft); }
.qcx-empty__item a{ color:var(--brown-600); font-weight:600; }

/* ---------- FAQ ---------- */
.qcx-faq__list{ max-width:860px; margin-inline:auto; display:grid; gap:14px; }
.qcx-faq-item{
  background:var(--cream-50); border:1px solid var(--line); border-radius:var(--radius-m);
  overflow:hidden; transition:border-color .3s;
}
.qcx-faq-item[open]{ border-color:var(--brown-500); }
.qcx-faq-item summary{
  list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center;
  gap:16px; padding:20px 26px; font-family:var(--font-serif); font-weight:700;
  color:var(--green-900); font-size:16.5px; position:relative; padding-left:52px;
}
.qcx-faq-item summary::-webkit-details-marker{ display:none; }
.qcx-faq-item summary::before{
  content:"Q"; position:absolute; left:22px; top:50%; transform:translateY(-50%);
  font-family:var(--font-serif); font-size:20px; color:var(--brown-500);
}
.qcx-faq-item summary span{
  flex:none; width:22px; height:22px; position:relative;
}
.qcx-faq-item summary span::before,.qcx-faq-item summary span::after{
  content:""; position:absolute; inset:0; margin:auto; background:var(--brown-500); transition:transform .3s;
}
.qcx-faq-item summary span::before{ width:12px; height:2px; }
.qcx-faq-item summary span::after{ width:2px; height:12px; }
.qcx-faq-item[open] summary span::after{ transform:rotate(90deg); }
.qcx-faq-item p{ padding:0 26px 22px 52px; font-size:14.5px; }
.qcx-faq-item p a{ color:var(--green-700); font-weight:600; }

/* ---------- Booking：深绿对角块 ---------- */
.qcx-booking{ background:var(--green-900); position:relative; overflow:hidden; }
.qcx-booking::before{
  content:""; position:absolute; top:-120px; right:-120px; width:420px; height:420px;
  background:radial-gradient(circle,rgba(176,141,102,.25),transparent 70%);
}
.qcx-booking__inner{
  display:grid; grid-template-columns:1.1fr 1fr; gap:clamp(36px,6vw,80px); align-items:center;
  padding:clamp(56px,8vw,96px) 0; position:relative; z-index:1;
}
.qcx-booking__copy h2{ color:var(--cream-100); margin-bottom:16px; }
.qcx-booking__copy p{ color:rgba(251,248,241,.75); }
.qcx-booking__phone{ margin-top:22px; font-size:17px; color:var(--cream-100) !important; }
.qcx-booking__phone a{ color:var(--brown-500); font-weight:700; font-size:22px; }
.qcx-booking__form{
  background:var(--cream-50); padding:34px 32px; border-radius:var(--radius-l);
  box-shadow:var(--shadow-lg); display:grid; gap:16px;
}
.qcx-booking__form .btn{ margin-top:6px; }

/* ---------- 独立 eyebrow 统一样式 ---------- */
.eyebrow{ display:inline-block; font-size:13px; letter-spacing:.32em; color:var(--brown-600); margin-bottom:14px; }
.eyebrow::before{ content:""; display:inline-block; width:30px; height:1px; background:var(--brown-500); vertical-align:middle; margin-right:10px; }
.qcx-booking__copy .eyebrow{ color:var(--brown-500); }

/* ---------- 响应式 ---------- */
@media (max-width:980px){
  .qcx-hero__media{ clip-path:none; }
  .qcx-hero__veil{ clip-path:none; background:rgba(27,42,33,.66); }
  .qcx-hero__tag{ display:none; }
  .qcx-why__grid,.qcx-corp__grid,.qcx-booking__inner{ grid-template-columns:1fr; }
  .qcx-why__pic{ margin-top:0; }
  .qcx-ch-card:nth-child(2){ transform:none; }
  .qcx-channel__cards{ grid-template-columns:1fr; }
  .qcx-step:nth-child(even){ margin-left:0; }
  .qcx-read__row{ grid-template-columns:1fr; gap:6px; }
  .qcx-empty__grid{ grid-template-columns:1fr; }
}
@media (max-width:640px){
  .qcx-step{ grid-template-columns:56px 1fr; gap:14px; }
  .qcx-step__num{ font-size:28px; }
  .qcx-why__float{ right:8px; bottom:-20px; padding:14px 18px; }
  .qcx-why__float b{ font-size:24px; }
}
