/* 官网样式。跟 workspace.css 共用品牌色，但排版是营销站的尺度：
   产品 UI 的 14px 基准放在官网上太小。两边刻意不共用文件 —— 官网改版
   不该有波及后台页面的可能。 */

:root{
  --bg:#fff;--bg-soft:#f3f5f9;--surface:#fff;
  --ink:#253044;--muted:#68758a;--line:#e3e8f0;
  --accent:#4267c1;--accent-dark:#3456a6;--soft:#eef2ff;
  --wrap:1080px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC',sans-serif;color:var(--ink);background:var(--bg);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
a:focus-visible,button:focus-visible{outline:3px solid #4267c170;outline-offset:3px;border-radius:4px}
img{max-width:100%;display:block}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}

/* --- header --- */
.site-header{position:sticky;top:0;z-index:30;background:#ffffffee;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.site-header .wrap{display:flex;align-items:center;gap:28px;height:68px}
.site-logo{display:flex;align-items:center;gap:10px;flex-shrink:0}
.site-logo img.mark{width:30px;height:30px;border-radius:8px}
.site-logo img.word{width:98px;height:auto}
.site-nav{display:flex;align-items:center;gap:26px;margin-left:auto}
.site-nav a{color:var(--muted);font-size:15px}
.site-nav a:hover{color:var(--ink);text-decoration:none}
.site-nav a.active{color:var(--ink);font-weight:600}

/* --- buttons --- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 24px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink);font-size:16px;font-weight:600;cursor:pointer;line-height:1.4;transition:background-color .15s,border-color .15s}
.btn:hover{background:var(--soft);border-color:#c9d4ef;text-decoration:none}
.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}
.btn-primary:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}
.btn[disabled],.btn-disabled{background:#e9edf3;color:var(--muted);border-color:var(--line);cursor:default;pointer-events:none}

/* --- hero --- */
.hero{padding:112px 0 96px;background:linear-gradient(175deg,#f7f9fe 0%,#fff 72%);border-bottom:1px solid var(--line)}
.hero h1{font-size:clamp(38px,6.2vw,64px);line-height:1.08;letter-spacing:-1.8px;font-weight:700;max-width:16ch}
.hero p.sub{margin-top:26px;font-size:clamp(18px,2.2vw,21px);color:var(--muted);max-width:52ch;line-height:1.6}
.hero .actions{margin-top:38px;display:flex;flex-wrap:wrap;gap:14px}

/* --- sections --- */
section.band{padding:88px 0;border-bottom:1px solid var(--line)}
section.band.tint{background:var(--bg-soft)}
section.band > .wrap > h2{font-size:clamp(26px,3.4vw,34px);line-height:1.2;letter-spacing:-.8px;margin-bottom:14px}
section.band > .wrap > p.lede{color:var(--muted);max-width:60ch;margin-bottom:44px;font-size:18px}

.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(272px,1fr));gap:26px}
.pillar{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:32px 28px}
.pillar h3{font-size:20px;line-height:1.3;margin-bottom:12px;letter-spacing:-.3px}
.pillar p{color:var(--muted);font-size:16px}

.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px 44px;list-style:none}
.features li h3{font-size:17px;margin-bottom:6px}
.features li p{color:var(--muted);font-size:15.5px}

/* --- stage table (where your audio goes) --- */
.stages{width:100%;border-collapse:collapse;margin-top:8px}
.stages th,.stages td{text-align:left;padding:20px 18px;border-bottom:1px solid var(--line);vertical-align:top;font-size:16px}
.stages th{font-size:13px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);font-weight:600;background:var(--bg-soft)}
.stages td:first-child{font-weight:600;white-space:nowrap}
.stages tr:last-child td{border-bottom:0}

/* --- buy block --- */
.buy-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:40px 36px;max-width:520px}
.buy-card .price{font-size:32px;font-weight:700;letter-spacing:-1px;margin-bottom:8px}
.buy-card p{color:var(--muted);margin-bottom:24px}

/* --- footer --- */
.site-footer{padding:56px 0 64px;color:var(--muted);font-size:15px}
.site-footer .links{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:22px}
.site-footer .links a{color:var(--muted)}
.site-footer .links a:hover{color:var(--ink)}

@media(max-width:760px){
  body{font-size:16px}
  .wrap{padding:0 16px}
  .site-header .wrap{height:60px;gap:14px}
  .site-logo img.word{display:none}
  .site-nav{gap:16px;overflow-x:auto;white-space:nowrap;-ms-overflow-style:none;scrollbar-width:none}
  .site-nav::-webkit-scrollbar{display:none}
  .site-nav a{font-size:14px}
  .hero{padding:68px 0 60px}
  section.band{padding:60px 0}
  .pillar{padding:26px 22px}
  .buy-card{padding:30px 24px}
  .stages th,.stages td{padding:14px 12px;font-size:15px}
  .stages td:first-child{white-space:normal}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}html{scroll-behavior:auto}}

/* --- buy form / notices --- */
.buy-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px;margin-top:20px}
.buy-form label{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--muted)}
.buy-form input[type=number]{width:88px;padding:11px 12px;border:1px solid var(--line);border-radius:10px;font:inherit;color:var(--ink);background:var(--surface)}
.buy-card h3{font-size:22px;letter-spacing:-.4px;margin-bottom:10px}
.buy-card .price small{font-size:14px;font-weight:400;color:var(--muted);letter-spacing:0}
.buy-card + .buy-card{margin-top:20px}
.notice{background:var(--soft);border:1px solid #c9d4ef;border-radius:11px;padding:14px 18px;margin-bottom:28px;font-size:16px;max-width:60ch}
