/* ============================================================
   布局层：容器、区块节奏、通用节标题、占位页
   断点：480 / 768 / 1024 / 1280
   ============================================================ */

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--s6)}
.wrap-narrow{max-width:var(--measure);margin:0 auto;padding:0 var(--s6)}

/* 区块留白 ≥96px（信息流克制，宁短勿长） */
.block{padding:var(--s8) 0}
.block-sm{padding:var(--s6) 0}

/* 节标题：kicker + h2 + 可选导语（DeepSeek 式小节起式） */
.sec-h{text-align:center;max-width:640px;margin:0 auto var(--s8)}
.sec-h .kicker{margin-bottom:var(--s4)}
.sec-h h2{font-family:var(--f-sans);font-size:var(--t2);font-weight:400;
  letter-spacing:.03em;line-height:1.4}
/* 细线元素：节标题下划线随进场绘出（html.js 门控：无 JS 时直接显示） */
html.js .sec-h h2::after{transform:scaleX(0)}
.sec-h h2::after{content:'';display:block;width:44px;height:1px;margin:var(--s5) auto 0;
  background:var(--tx3);opacity:.4;
  transition:transform var(--d-slow) var(--ease) .2s}
html.js .sec-h.in h2::after{transform:scaleX(1)}
.sec-h p{color:var(--tx2);margin-top:var(--s4)}

/* 引用 */
.quote{padding:var(--s7) 0;text-align:center;
  background:color-mix(in srgb,var(--raise) 62%,transparent);
  -webkit-backdrop-filter:var(--veil-sm);backdrop-filter:var(--veil-sm)}
.quote-in{max-width:760px;margin:0 auto;padding:0 var(--s6)}
.quote blockquote{font-family:var(--f-sans);font-size:var(--t2);font-weight:400;
  letter-spacing:.05em;line-height:1.8}
.quote cite{display:block;margin-top:var(--s6);font-size:var(--t6);color:var(--tx3);
  font-style:normal;letter-spacing:.06em}

/* 结尾 CTA */
.cta{border-top:1px solid var(--hair);text-align:center}
.cta .btns{display:flex;gap:var(--s3);justify-content:center;margin-top:var(--s7);flex-wrap:wrap}

/* 骨架占位页 */
.placeholder{min-height:52vh;display:flex;flex-direction:column;align-items:center;
  justify-content:center;text-align:center;gap:var(--s4);padding:var(--s9) var(--s6)}
.placeholder h1{font-family:var(--f-sans);font-size:var(--t2);font-weight:400;letter-spacing:.03em}
.placeholder p{color:var(--tx2);font-size:var(--t5)}
.placeholder .btn-ghost{margin-top:var(--s4)}

@media (max-width:768px){
  .block{padding:var(--s8) 0}
  .wrap,.wrap-narrow{padding:0 var(--s5)}
}
