  :root{--bg:#f4f5f2;--ink:#111;--grey:#9aa09a;--muted:#6b7280;--body:#3f4944;--green:#0a5c2f;--bright:#07d228;
        --serif:Georgia,"Iowan Old Style","Times New Roman",serif;
        --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
        --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
  *{box-sizing:border-box}
  .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
  body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}
  .shell{max-width:1240px;margin:0 auto;padding:0 30px}
  .top{position:sticky;top:0;z-index:30;background:rgba(244,245,242,.9);backdrop-filter:blur(12px);border-bottom:1px solid rgba(17,17,17,.07)}
  .top .shell{display:flex;align-items:center;gap:28px;height:66px}
  .brand{display:inline-flex;align-items:center;text-decoration:none;flex:none}
  .brand img{display:block;height:28px;width:auto}
  nav{display:flex;gap:22px;font-size:13.5px;color:#4a5450}
  nav a{color:inherit;text-decoration:none}
  
  .hero{padding:60px 0 0;text-align:center}
  .kick{display:inline-flex;align-items:center;gap:10px;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 26px}
  .kick .dot{width:6px;height:6px;border-radius:50%;background:var(--bright)}
  h1{margin:0 auto 18px;max-width:900px;font-family:var(--serif);font-weight:500;font-size:clamp(36px,4.6vw,62px);line-height:1.02;letter-spacing:-.02em}
  h1 em{font-style:normal;color:var(--grey)}
  .sub{margin:0 auto 30px;max-width:520px;color:#4a5450;font-size:16px;line-height:1.6}

  /* tabs */
  .tabwrap{max-width:1020px;margin:0 auto}
  .tabs{display:flex;gap:4px;justify-content:center;flex-wrap:wrap;padding:6px;background:#fff;border-radius:14px;
        box-shadow:0 0 0 1px rgba(17,17,17,.07),0 20px 40px -34px rgba(17,17,17,.6)}
  .tab{appearance:none;border:0;background:transparent;font-family:var(--sans);font-size:13.5px;color:#4a5450;padding:11px 15px;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;gap:8px}
  .tab .n{font-family:var(--mono);font-size:10.5px;color:#a8ada6}
  .tab[aria-selected="true"]{background:#eef4ee;color:#0a4a26;font-weight:600}
  .tab[aria-selected="true"] .n{color:#0a7a1f}
  .tabbar{height:2px;background:rgba(17,17,17,.08);border-radius:99px;margin:10px 6px 0;overflow:hidden}
  .tabbar span{display:block;height:100%;width:0;background:#0a7a1f}

  /* panel */
  .panel{/* 预留高度，避免六屏文案长短不同导致页面高度跳动 */ min-height:520px;display:grid;grid-template-columns:1.02fr .98fr;gap:64px;align-items:center;padding:52px 0 10px}
  .copy .eyebrow{display:flex;align-items:center;gap:12px;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 24px}
  .copy .eyebrow::before{content:"";width:26px;height:1px;background:#c9cdc7}
  .copy .eyebrow b{font-family:var(--serif);font-style:italic;font-weight:400;font-size:15px;letter-spacing:.02em;color:#a8ada6}
  .copy h2{margin:0 0 20px;font-family:var(--serif);font-weight:500;font-size:clamp(34px,3.9vw,52px);line-height:1.04;letter-spacing:-.02em;max-width:17ch}
  .copy h2 em{font-style:normal;color:var(--grey)}
  .copy .deck{margin:0 0 18px;font-family:var(--serif);font-style:italic;font-size:20px;line-height:1.45;color:#3a443f;max-width:36ch}
  .copy .body{margin:0 0 24px;font-size:15.5px;line-height:1.68;color:var(--body);max-width:46ch}
  .links{display:flex;flex-wrap:wrap;gap:6px 20px;margin:0 0 28px;padding:0;list-style:none;font-size:14px}
  .links a{color:#2f3833;text-decoration:none;border-bottom:1px solid rgba(17,17,17,.22);padding-bottom:2px}
  .links a:hover{border-color:#0a7a1f;color:#0a4a26}
  .entry{display:inline-flex;align-items:center;gap:12px;font-size:14.5px;font-weight:650;color:#111;text-decoration:none}
  .entry i{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#111;color:#fff;font-style:normal;font-size:13px;transition:transform .2s}
  .entry:hover i{transform:translateX(3px)}

  .frame{position:relative;height:min(60vh,500px);border-radius:18px;overflow:hidden;background:#e7e9e4;
         box-shadow:0 0 0 1px rgba(17,17,17,.08),0 34px 70px -44px rgba(17,17,17,.55)}
  .frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s}
  .frame img.on{opacity:1}
  .frame.frame-missing img{opacity:0 !important}
  .frame-note[hidden]{display:none !important}
  .frame-note{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;margin:0;padding:24px;
              text-align:center;font-size:14px;line-height:1.5;color:#3f4944;background:#f4f5f2;z-index:3}
  .frame.frame-missing{background:#dfe3dd url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath d='M0 0h40v40H0z' fill='%23e7e9e4'/%3E%3C/svg%3E")}
  .frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,10,12,0) 44%,rgba(8,10,12,.74) 100%);pointer-events:none}
  .ov{position:absolute;left:22px;right:22px;bottom:18px;color:#fff;z-index:2}
  .ov .k{font-size:10px;letter-spacing:.15em;text-transform:uppercase;opacity:.75;margin-bottom:6px}
  .ov .b{font-size:21px;line-height:1.18;letter-spacing:-.01em;font-weight:600;max-width:310px}
  .ov .s{margin-top:6px;font-size:12.5px;opacity:.86;max-width:320px;line-height:1.45}
  .controls{display:flex;align-items:center;justify-content:center;gap:18px;margin:16px 0 0}
  .play{appearance:none;border:0;background:#fff;box-shadow:0 0 0 1px rgba(17,17,17,.1);color:#3f4944;
        font-family:var(--sans);font-size:12px;letter-spacing:.04em;padding:7px 12px;border-radius:999px;cursor:pointer}
  .play:hover{color:#111;box-shadow:0 0 0 1px rgba(17,17,17,.25)}
  .dots{display:flex;gap:7px;justify-content:center;margin:0}
  .dots button{width:7px;height:7px;border-radius:50%;border:0;padding:0;background:rgba(17,17,17,.18);cursor:pointer}
  .dots button.on{background:#111;width:20px;border-radius:99px}

  .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:36px 0 0;padding:22px 24px;background:#fff;border-radius:16px;box-shadow:0 0 0 1px rgba(17,17,17,.06)}
  .stat b{display:block;font-family:var(--serif);font-size:30px;font-weight:500;letter-spacing:-.01em}
  .stat span{display:block;margin-top:4px;font-size:12.5px;color:var(--muted)}
  .how{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:58px 0 72px}
  .how h3{margin:0 0 10px;font-family:var(--serif);font-weight:500;font-size:22px;letter-spacing:-.01em}
  .how p{margin:0;font-size:15.5px;line-height:1.7;color:var(--body);max-width:46ch}
  .foot{border-top:1px solid rgba(17,17,17,.08);padding:22px 0 40px;color:var(--muted);font-size:12.5px}
  @media(max-width:940px){
    .panel{grid-template-columns:1fr;gap:22px;padding-top:30px;min-height:800px}
    .frame{order:-1;height:min(38vh,300px)}
    .tabs{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto}
    .tab{white-space:nowrap}
    nav{display:none}
    .how{grid-template-columns:1fr}
    .stats{grid-template-columns:1fr 1fr}
    h1{font-size:34px}
  }
  @media (prefers-reduced-motion: reduce){.frame img,.entry i{transition:none}.entry:hover i{transform:none}}
/* 紧凑问答（首页底部，三条） */
.faq-strip{max-width:760px}
.faq h3{margin:20px 0 6px;font-family:var(--sans);font-size:15.5px;font-weight:700;color:var(--ink)}
.faq p{margin:0;font-size:14.5px;line-height:1.65;color:var(--body)}
