@font-face{font-family:"BrandHand";src:url("/assets/brandhand.woff2") format("woff2");font-display:swap}
:root{--bg:#0a0a0b;--card:#131315;--text:#f2efe8;--soft:#9b968b;--line:#2b2b2e;--accent:#d8d4cb}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{background:var(--bg);color:var(--text)}
body{font-family:"Lora",Georgia,serif;min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:40px 22px 56px;line-height:1.75;-webkit-font-smoothing:antialiased}
.zh{font-family:"Noto Serif TC",serif}
.head{text-align:center}
.head a{text-decoration:none;color:inherit}
.logo{width:76px;height:76px;border-radius:50%;box-shadow:0 0 0 1px var(--line),0 0 34px rgba(242,239,232,.06)}
.brand-name{font-family:"BrandHand",serif;font-size:26px;letter-spacing:.3em;text-indent:.3em;margin-top:12px}
.brand-en{font-size:11px;letter-spacing:.32em;text-indent:.32em;color:var(--soft);margin-top:2px}
h1{font-size:34px;font-weight:600;line-height:1.25;margin-top:22px;text-align:center;text-wrap:balance}
.sub{font-size:13px;color:var(--soft);margin-top:8px;letter-spacing:.08em;text-align:center}
.divider{width:36px;height:1px;background:var(--line);margin:26px auto}
.stage{max-width:460px;width:100%}
.art{width:100%;max-width:300px;aspect-ratio:1/1;object-fit:cover;border-radius:6px;display:block;margin:0 auto 26px;box-shadow:0 0 0 1px var(--line),0 18px 50px rgba(0,0,0,.6)}
.btn{font-family:inherit;font-size:15.5px;letter-spacing:.12em;padding:15px 40px;background:var(--text);color:#111;border:none;border-radius:3px;cursor:pointer;transition:opacity .2s;font-weight:600;text-decoration:none;display:inline-block;text-align:center}
.btn:active{opacity:.75}
.btn.ghost{background:transparent;color:var(--text);border:1px solid #4a4a4e;font-weight:400}
.btn.block{display:block;width:100%;padding:15px 0}
.lead{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:26px 22px;text-align:center;margin-top:32px}
.lead-title{font-size:19px;font-weight:600;margin-bottom:6px}
.lead-sub{font-size:14px;color:var(--soft);margin-bottom:4px}
.lead input{width:100%;border:1px solid var(--line);border-radius:3px;padding:13px 16px;font-size:16px;font-family:inherit;background:var(--bg);color:var(--text);margin-top:12px}
.lead input::placeholder{color:#6b675e}
.email{display:flex;gap:8px;margin-top:12px}
.email input{flex:1;min-width:0;margin-top:0}
.email button{white-space:nowrap;padding:13px 20px;font-size:14.5px}
.msg{font-size:13.5px;color:var(--soft);margin-top:10px;min-height:1.2em}
.note{font-size:13px;color:var(--soft);text-align:center;margin-top:6px}
.cta{border-top:1px solid var(--line);margin-top:36px;padding-top:30px;text-align:center}
.cta p{font-size:15px;color:var(--soft);margin-bottom:20px}
.cta-links{display:flex;flex-direction:column;gap:12px}
.cta-links a{display:block;text-decoration:none;font-size:15px;letter-spacing:.06em;padding:15px 0;border:1px solid #4a4a4e;border-radius:3px;color:var(--text);transition:opacity .2s}
.cta-links a.primary{background:var(--text);color:#111;border-color:var(--text);font-weight:600}
.about{max-width:560px;width:100%;margin:56px auto 0;padding:32px 0 8px;border-top:1px solid var(--line);color:#d8d4cb;font-size:15px}
.about h2{font-size:19px;color:var(--text);margin-bottom:12px;font-weight:600}
.about h3{font-size:16px;color:var(--text);margin:28px 0 10px;font-weight:600}
.about p{margin-bottom:12px}
.about ul{padding-left:1.3em;margin-bottom:6px}
.about details{border-bottom:1px solid var(--line);padding:12px 0}
.about summary{cursor:pointer;color:var(--text);font-weight:600;list-style:none}
.about summary::-webkit-details-marker{display:none}
.about summary::before{content:"+";color:var(--soft);margin-right:10px}
.about details[open] summary::before{content:"–"}
.about details p{margin:10px 0 0;color:var(--soft)}
.about .more{font-size:13.5px;margin-top:26px}
.about .more a{color:#d8d4cb;text-decoration:none;border-bottom:1px solid var(--line);margin-right:14px;line-height:2.2;white-space:nowrap}
footer{margin-top:56px;text-align:center}
.sig{font-family:"BrandHand",serif;font-size:30px;letter-spacing:.35em;text-indent:.35em}
.tagline{font-size:11.5px;color:var(--soft);letter-spacing:.24em;text-indent:.24em;margin-top:10px;border-top:1px solid var(--line);padding-top:14px;display:inline-block;text-transform:uppercase}
.toast{position:fixed;bottom:36px;left:50%;transform:translateX(-50%) translateY(90px);background:var(--text);color:#111;font-size:14px;padding:11px 26px;border-radius:100px;opacity:0;transition:all .35s;pointer-events:none;white-space:nowrap;z-index:10}
.toast.show{transform:translateX(-50%) translateY(0);opacity:1}
