:root{
  --bg:#FBF6EE; --surface:#fff; --ink:#2B2420; --ink2:#6B5F52; --ink3:#9A8B7A;
  --line:#E8DFD0; --accent:#2F6F62; --warn:#B54708;
  --radius:20px;
  --display:'Quicksand',-apple-system,BlinkMacSystemFont,sans-serif;
  --body:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--ink);font-family:var(--body);line-height:1.7;-webkit-font-smoothing:antialiased}
section{max-width:760px;margin:0 auto;padding:5.5rem 1.5rem}
h1,h2{font-family:var(--display);font-weight:600;line-height:1.25;letter-spacing:-.01em}
h1{font-size:clamp(1.9rem,5vw,2.9rem)}
h2{font-size:clamp(1.5rem,4vw,2.2rem)}
.lead{font-size:1.13rem;color:var(--ink2);margin-top:.9rem}
.lead-sub{font-size:1rem;margin-top:.7rem}
.caption{font-size:.88rem;color:var(--ink3);margin-top:1rem;max-width:52ch;margin-left:auto;margin-right:auto}

/* 屏1 */
.s1{text-align:center;padding-top:4.5rem}
.eyebrow{font-size:.8rem;letter-spacing:.14em;color:var(--ink3);font-weight:600;margin-bottom:.7rem}
.sprite-row{display:flex;justify-content:center;align-items:flex-end;gap:.3rem;flex-wrap:wrap;margin:2.4rem 0}
.diagnosis{margin-top:2.6rem;text-align:center}
.dx-1{font-size:1.05rem;color:var(--ink2)}
.dx-2{font-family:var(--display);font-size:clamp(1.3rem,3.6vw,1.75rem);font-weight:600;margin:.5rem 0 1.4rem}
.dx-3{font-size:1.05rem;color:var(--ink2);max-width:46ch;margin:0 auto}
.dx-3 strong{color:var(--ink)}

/* 屏2 */
.s2{text-align:center;border-top:1px solid var(--line)}
.hand-row{display:flex;justify-content:center;align-items:flex-end;gap:.25rem;flex-wrap:wrap;margin:2.4rem 0 0}
.mech{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1.1rem;margin-top:3rem;text-align:left}
.mech-item{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.3rem 1.2rem}
.mech-art{margin-bottom:.5rem}
.mech-item strong{display:block;font-family:var(--display);font-size:1rem;margin-bottom:.35rem}
.mech-item p{color:var(--ink2);font-size:.93rem;line-height:1.6}
.ba{display:flex;align-items:center;justify-content:center;gap:1.6rem;margin-top:3rem;flex-wrap:wrap}
.ba-side p{font-size:.85rem;color:var(--ink3);margin-top:.4rem}
.ba-arrow{font-size:1.6rem;color:var(--ink3)}
.ba-note{margin-top:.8rem}
.credibility{margin-top:3.2rem;padding-top:2rem;border-top:1px solid var(--line);text-align:left}
.credibility p{color:var(--ink2);font-size:1rem}
.credibility strong{color:var(--ink)}
.disclaimer{font-size:.86rem;color:var(--ink3);font-style:italic;margin-top:1rem}

/* 屏3 */
.s3{text-align:center;border-top:1px solid var(--line)}
.waitlist{display:flex;flex-direction:column;gap:.6rem;max-width:420px;margin:2rem auto 0}
.waitlist input,.waitlist textarea{
  padding:.85rem 1.05rem;border:1px solid var(--line);border-radius:14px;
  font-size:1rem;font-family:var(--body);background:var(--surface);color:var(--ink);width:100%;resize:vertical
}
.waitlist input:focus,.waitlist textarea:focus{outline:none;border-color:var(--accent)}
.cta{background:var(--accent);color:#fff;border:none;border-radius:999px;padding:.9rem 2rem;
  font-size:1rem;font-weight:600;font-family:var(--body);cursor:pointer}
.cta:hover{opacity:.9}
.status{margin-top:.8rem;font-size:.92rem;min-height:1.3em;color:var(--ink2)}
.status.ok{color:var(--accent)}
.status.err{color:var(--warn)}
.fine{font-size:.82rem;color:var(--ink3);margin-top:.5rem}
.foot{margin-top:3.5rem;opacity:.9}

.sprite{display:block}

@media(max-width:520px){
  section{padding:3.4rem 1.2rem}
  .sprite-row,.hand-row{gap:.1rem}
  .ba{gap:.8rem}
}
