/* ============ 基础 ============ */
:root{
  --black:#0a0a0a;
  --white:#f4f2ee;
  --muted:rgba(244,242,238,.6);
  --line:rgba(244,242,238,.16);
  --accent:#e8b04b;
  --ease:cubic-bezier(.22,.8,.24,1);
  --bar-h:72px;
}

/* 老浏览器静态兜底（IE11 等） */
@supports not (--css: variables){
  body{color:#f4f2ee}
  .brand,.mainnav .nav-link,.sidenav-foot a,.lang-switch,.tool-link,
  .hero-title,.btn-line{color:#f4f2ee}
  .hero-kicker,.hero-sub,.scroll-hint,
  .sidenav-foot a,.tool-link,.lang-switch,.crumb,.card span,
  .block p,.note,.footer-end{color:rgba(244,242,238,.72)}
  .dropdown a:hover,.block h3,.crumb{color:#e8b04b}
  .hero-title{font-size:56px}
  .content-block h2{font-size:40px}
  .cards{display:block}
  .card{display:block;margin-bottom:14px}
  .mainnav-list{list-style:none}
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  font-family:"Helvetica Neue",Arial,"PingFang SC","Microsoft YaHei",sans-serif;
  background:#000;
  color:var(--white);
  overflow:hidden;
  -webkit-font-smoothing:antialiased;
}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
a{color:inherit;text-decoration:none}

/* ============ 背景层 ============ */
.bg-layer{position:fixed;top:0;left:0;right:0;bottom:0;z-index:0;
  background:#000;overflow:hidden}
/* 保护媒体：屏蔽 iOS 长按"存储视频/图像"气泡、禁止选中与拖拽
   （配合各标签 oncontextmenu="return false" 屏蔽右键/长按菜单） */
.bg-photo,.bg-video,.member-video,.brand-logo{
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -moz-user-select:none;
  user-select:none;
  -webkit-user-drag:none;
}
.bg-photo,.bg-video{position:absolute;top:0;left:0;right:0;bottom:0;
  width:100%;height:100%;object-fit:cover;
  opacity:0;transform:scale(1.05);
  transition:opacity 1.2s var(--ease);}
.bg-photo.is-live,.bg-video.is-live{opacity:1}
.member-video{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;
  width:100%;height:100%;object-fit:cover;
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity 1.2s var(--ease),visibility 0s linear 1.2s;}
.member-video.is-live{opacity:1;visibility:visible;
  transition:opacity 1.2s var(--ease),visibility 0s;}
.bg-vignette{position:absolute;top:0;left:0;right:0;bottom:0;z-index:2;pointer-events:none;
  background:
    radial-gradient(120% 120% at 50% 38%, rgba(0,0,0,.12) 0%, rgba(0,0,0,.5) 70%, rgba(0,0,0,.8) 100%),
    linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,0) 18%);}

/* ============ 顶部固定导航条 ============ */
.topbar{position:fixed;top:0;left:0;right:0;z-index:40;
  height:var(--bar-h);
  display:flex;align-items:center;gap:24px;
  padding:0 28px;
  background:transparent}
body.scrolled .topbar{background:transparent;backdrop-filter:none}
.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}
.brand-logo{display:block;height:40px;width:auto}
.brand-name{
  font-family:"Helvetica Neue",Arial,"PingFang SC","Microsoft YaHei",sans-serif;
  font-size:16px;font-weight:700;letter-spacing:.02em;
  color:var(--muted);white-space:nowrap}

/* PC 横向导航 */
.mainnav{flex:1;display:flex;justify-content:center;min-width:0}
.mainnav-list{list-style:none;display:flex;align-items:center;gap:4px}
.nav-item{position:relative}
.nav-link{position:relative;display:flex;align-items:center;gap:7px;
  padding:26px 16px;
  font-size:15px;letter-spacing:.12em;color:var(--muted);
  white-space:nowrap;transition:color .3s}
.nav-link .nav-caret{font-size:10px;opacity:.7;transition:transform .3s var(--ease)}
.nav-item:hover>.nav-link,.nav-link.is-active{color:var(--white)}
.nav-item:hover>.nav-link .nav-caret{transform:rotate(180deg)}

/* 无子菜单项：下划线动画（悬停展开 / 移走收起） */
.nav-link.is-single::after{content:"";position:absolute;left:16px;right:16px;bottom:18px;
  height:1.5px;background:var(--white);
  transform:scaleX(0);transform-origin:left;
  transition:transform .35s var(--ease)}
.nav-link.is-single:hover::after{transform:scaleX(1)}

/* 下拉深色面板：以对应项目为中心，从文字正下方弹出。
   顶部 16px 的隐形桥接区（::before）让鼠标能从导航条顺滑滑入菜单。 */
.dropdown{position:absolute;top:calc(100% - 8px);left:50%;
  transform:translateX(-50%) translateY(10px);
  min-width:208px;
  list-style:none;
  background:rgba(11,11,11,.98);backdrop-filter:blur(18px);
  border-top:2px solid var(--accent);
  padding:8px 0;
  opacity:0;pointer-events:none;
  transition:opacity .25s var(--ease), transform .25s var(--ease)}
/* 隐形桥接区：覆盖项目与面板之间的缝隙，hover 不会断 */
.dropdown::before{content:"";position:absolute;left:0;right:0;
  top:-16px;height:16px}
.nav-item:hover>.dropdown,
.nav-item:has(:focus-visible)>.dropdown{
  opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto}
.dropdown a{display:block;padding:13px 24px;
  font-size:14px;letter-spacing:.08em;color:var(--muted);
  transition:.25s}
.dropdown a:hover{color:var(--white);background:rgba(255,255,255,.05);padding-left:30px}
.dropdown a.is-active{color:var(--accent)}

/* 窄屏下：面板若居中会溢出屏幕边缘，则改为对齐边缘显示，保证可完整看到 */
@media (max-width:1100px){
  .mainnav-list>.nav-item:first-child .dropdown{left:0;
    transform:translateX(0) translateY(10px)}
  .mainnav-list>.nav-item:first-child:hover .dropdown,
  .mainnav-list>.nav-item:first-child:has(:focus-visible) .dropdown{
    transform:translateX(0) translateY(0)}
  .mainnav-list>.nav-item:last-child .dropdown{left:auto;right:0;
    transform:translateX(0) translateY(10px)}
  .mainnav-list>.nav-item:last-child:hover .dropdown,
  .mainnav-list>.nav-item:last-child:has(:focus-visible) .dropdown{
    transform:translateX(0) translateY(0)}
}

/* 顶栏右侧控件 */
.topbar-right{display:flex;align-items:center;gap:12px;flex-shrink:0}
.tool-link{font-size:12px;letter-spacing:.1em;color:var(--muted);
  border:1px solid var(--line);padding:8px 14px;border-radius:99px;transition:.3s}
.tool-link:hover{color:var(--white);border-color:var(--white)}
.lang-switch{font-size:12px;letter-spacing:.08em;color:var(--muted);
  border:1px solid var(--line);width:40px;height:32px;border-radius:99px;transition:.3s}
.lang-switch:hover{color:var(--white);border-color:var(--white)}
.icon-btn{display:flex;align-items:center;justify-content:center;
  width:36px;height:32px;border:1px solid var(--line);border-radius:99px;
  font-size:14px;line-height:1;transition:.3s}
.icon-btn:hover{border-color:var(--white)}

/* ============ 统一登录入口（低调） ============ */
.account{position:relative;flex-shrink:0}
.account-btn{display:flex;align-items:center;gap:7px;max-width:150px;
  font-size:12px;letter-spacing:.06em;color:var(--muted);
  border:1px solid var(--line);padding:7px 13px;border-radius:99px;
  background:none;cursor:pointer;transition:.3s}
.account-btn:hover{color:var(--white);border-color:var(--white)}
.account-dot{width:6px;height:6px;border-radius:50%;background:var(--muted);
  flex-shrink:0;transition:.3s}
.account.is-in .account-dot{background:var(--accent)}
.account-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:170px;
  background:rgba(20,18,15,.97);border:1px solid var(--line);border-radius:12px;
  padding:8px;box-shadow:0 18px 44px rgba(0,0,0,.55);z-index:60}
.account-menu[hidden]{display:none}
.account-who{padding:8px 10px 10px;border-bottom:1px solid var(--line)}
.account-who-name{font-size:13px;color:var(--white);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-who-tag{display:inline-block;margin-top:6px;font-size:10px;letter-spacing:.08em;
  color:var(--accent);border:1px solid rgba(232,176,75,.4);
  padding:2px 8px;border-radius:99px}
.account-logout{width:100%;margin-top:6px;text-align:left;font-size:12.5px;
  letter-spacing:.04em;color:var(--muted);background:none;border:0;
  padding:9px 10px;border-radius:8px;cursor:pointer;transition:.2s}
.account-logout:hover{color:var(--white);background:rgba(244,242,238,.07)}

/* ============ 登录弹窗 ============ */
.login-modal{position:fixed;inset:0;z-index:1000;display:none;
  align-items:center;justify-content:center;padding:24px;
  background:rgba(8,7,6,.66);backdrop-filter:blur(3px)}
.login-modal.is-open{display:flex}
.login-modal-card{position:relative;width:min(380px,100%);
  background:#1b1713;border:1px solid rgba(232,176,75,.35);border-radius:14px;
  box-shadow:0 24px 60px rgba(0,0,0,.6);padding:30px 32px 32px}
.login-modal-close{position:absolute;top:12px;right:14px;width:38px;height:38px;
  appearance:none;background:none;border:0;cursor:pointer;font-size:26px;line-height:1;
  color:rgba(244,242,238,.7);transition:color .18s ease}
.login-modal-close:hover{color:var(--accent)}
.login-modal-title{font-size:21px;line-height:1.4;color:#f4f2ee;margin:0 0 4px;font-weight:600}
.login-modal-hint{font-size:12.5px;color:var(--muted);margin:0 0 22px}
.login-field{display:block;margin-bottom:16px}
.login-field-label{display:block;font-size:11.5px;letter-spacing:.06em;
  color:var(--muted);margin-bottom:7px}
.login-field input{width:100%;font-size:14.5px;color:var(--white);
  background:rgba(244,242,238,.05);border:1px solid var(--line);
  border-radius:9px;padding:11px 13px;outline:none;transition:border-color .18s}
.login-field input:focus{border-color:var(--accent)}
.login-error{font-size:12.5px;color:#e07a5f;margin:0 0 12px}
.login-submit{width:100%;font-size:14px;letter-spacing:.08em;color:#1b1713;
  background:var(--accent);border:0;border-radius:99px;padding:12px;
  cursor:pointer;transition:.25s}
.login-submit:hover{filter:brightness(1.08)}
.login-submit:disabled{opacity:.55;cursor:default}
@media (max-width:768px){
  .login-modal{padding:14px}
  .login-modal-card{padding:26px 20px 24px}
  .login-modal-title{font-size:19px}
  .account-btn{max-width:110px;padding:7px 11px}
}

/* 汉堡按钮：PC 隐藏 */
.menu-fab{display:none}

/* 手机抽屉与遮罩：桌面端彻底从文档流移除，避免占据高度把主内容顶下去。
   只在手机媒体查询里再恢复为 fixed 抽屉。 */
.sidenav,.nav-scrim{display:none}

/* ============ 单页整屏滚动 ============ */
.scroll{position:relative;z-index:10;height:100vh;height:100dvh;width:100%;
  overflow-y:auto;overflow-x:hidden;
  scroll-snap-type:y mandatory;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch}

.snap-section{position:relative;
  height:100vh;height:100dvh;
  scroll-snap-align:start;scroll-snap-stop:always;
  display:flex;align-items:center;justify-content:center}

/* 首屏 */
.hero-section .hero{padding:0 8vw;max-width:900px;width:100%;
  opacity:0;transform:translateY(24px);transition:1.1s var(--ease) .2s}
.hero-section.is-in .hero{opacity:1;transform:none}
/* PC 端：整组文字稍微向右偏移（手机端不偏移，保持贴边） */
@media (min-width:769px){
  .hero-section .hero{margin-left:22vw}
}
.hero-kicker{font-size:12px;letter-spacing:.42em;color:var(--muted);margin-bottom:22px}
.hero-title{font-size:56px;font-size:clamp(40px,7vw,92px);line-height:1.06;font-weight:700;letter-spacing:.02em}
.hero-sub{margin-top:24px;font-size:14px;letter-spacing:.22em;color:var(--muted)}
.hero-cta{margin-top:40px}
.btn-line{border:1px solid var(--line);padding:13px 30px;border-radius:99px;
  font-size:13px;letter-spacing:.18em;transition:.35s}
.btn-line:hover{background:var(--white);color:#000;border-color:var(--white)}
/* ============ 产品字标入口（首屏左侧竖排） ============ */
/* PC 版：JS 克隆到 body 下（.app-launch-pc），fixed 固定在视口左中；
   body 处于非首屏(.beyond-hero)时自动隐藏。 */
.app-launch-pc{position:fixed;left:2vw;top:50%;
  transform:translateY(-50%);display:none;flex-direction:column;gap:26px;z-index:30}
body.beyond-hero .app-launch-pc{opacity:0;pointer-events:none;transform:translateY(-50%) translateX(-12px)}
.app-launch-pc{transition:opacity .4s var(--ease), transform .4s var(--ease)}
/* 移动端版（hero 文字流内）默认隐藏，在移动媒体查询中显示 */
.app-launch-mobile{display:none}
@media (min-width:769px){
  .app-launch-pc{display:flex}
}
.wordmark-btn{position:relative;appearance:none;background:none;border:0;padding:0;
  cursor:pointer;width:196px;display:block;text-decoration:none;
  transition:transform .35s var(--ease), filter .35s var(--ease)}
.wordmark-btn:hover{transform:translateX(6px);filter:drop-shadow(0 8px 22px rgba(232,176,75,.28))}
.wordmark{width:100%;height:auto;display:block;overflow:visible}
.wm-en{fill:var(--white);font-family:"Helvetica Neue",Arial,sans-serif;
  font-size:30px;font-weight:800;letter-spacing:1.5px}
.wm-pro{fill:var(--accent);font-size:30px}
.wm-pop{fill:var(--accent);font-size:30px}
.wm-zh{fill:rgba(244,242,238,.72);font-family:"PingFang SC","Microsoft YaHei",sans-serif;
  font-size:13px;letter-spacing:2px}
/* 泡泡按钮整体略降饱和，区分未上线 */
.wordmark-btn.is-soon{opacity:.82}
.wordmark-btn.is-soon .wm-en{fill:rgba(244,242,238,.78)}
.soon-badge{position:absolute;top:-9px;right:-6px;font-size:10px;letter-spacing:.1em;
  color:var(--accent);border:1px solid rgba(232,176,75,.45);background:rgba(20,18,15,.9);
  padding:3px 9px;border-radius:99px}
/* 图标微动画 */
.wordmark-btn .wm-icon{transition:transform .35s var(--ease);transform-box:fill-box;transform-origin:center}
.wordmark-btn:hover .wm-icon{transform:scale(1.08) rotate(-4deg)}

/* ============ 敬请期待弹窗 ============ */
.notice-modal{position:fixed;inset:0;z-index:1000;display:none;
  align-items:center;justify-content:center;padding:24px;
  background:rgba(8,7,6,.66);backdrop-filter:blur(3px)}
.notice-modal.is-open{display:flex}
.notice-modal-card{position:relative;width:min(360px,100%);text-align:center;
  background:#1b1713;border:1px solid rgba(232,176,75,.35);border-radius:14px;
  box-shadow:0 24px 60px rgba(0,0,0,.6);padding:34px 30px 32px}
.notice-modal-close{position:absolute;top:12px;right:14px;width:38px;height:38px;
  appearance:none;background:none;border:0;cursor:pointer;font-size:26px;line-height:1;
  color:rgba(244,242,238,.7);transition:color .18s ease}
.notice-modal-close:hover{color:var(--accent)}
.notice-icon{font-size:28px;color:var(--accent);margin-bottom:12px}
.notice-title{font-size:21px;color:#f4f2ee;margin:0 0 10px;font-weight:600;letter-spacing:.04em}
.notice-text{font-size:14px;line-height:1.8;color:rgba(244,242,238,.8);margin:0}

/* 移动端：字标入口在文字流内，横排两按钮 */
@media (max-width:768px){
  .app-launch-mobile{display:flex;position:static;transform:none;margin:60px 0 0;
    left:auto;top:auto;flex-direction:row;gap:14px}
  .app-launch-pc{display:none}
  .wordmark-btn{width:calc(50% - 7px)}
  .notice-modal{padding:14px}
  .notice-modal-card{padding:30px 22px 28px}
}

.scroll-hint{position:absolute;left:8vw;bottom:34px;
  display:flex;flex-direction:column;align-items:flex-start;gap:6px;
  font-size:11px;letter-spacing:.3em;color:var(--muted);transition:.3s}
.scroll-hint:hover{color:var(--white)}
.scroll-arrow{font-size:18px;line-height:1;animation:bob 1.8s var(--ease) infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}

/* ============ 首屏推广位 ============ */
/* 默认（PC）：显示竖排版，隐藏手机轮播 */
.promo-pc{display:flex}
.promo-mobile{display:none}

/* PC：右侧对齐、偏右下，竖排三个。尺寸参照微信公众号缩略图大小，
   单卡约 220px 宽、4:3（≈220x165）。 */
.promo-pc{position:absolute;right:6vw;bottom:96px;z-index:12;
  flex-direction:column;align-items:flex-end;gap:14px}

/* 窄桌面 / 平板横屏（769-1366px）：竖排卡收窄，避免压住左中 hero 文案。
   v=20261014：断点下限原为 1025，iPad mini 横屏（1024/1133 CSS px）
   仍按 400px 大卡渲染，与 hero 标题水平重叠——故扩到 769。 */
@media(min-width:769px) and (max-width:1366px){
  .promo-pc{right:clamp(14px,2.5vw,36px);bottom:clamp(40px,6vh,80px);gap:10px}
  .promo-pc .promo-card{width:min(320px,30vw);border-radius:14px}
  .promo-pc .promo-title{font-size:13px;padding:18px 12px 9px}
}
.promo-card{position:relative;display:block;width:400px;aspect-ratio:21/9;
  border-radius:12px;overflow:hidden;
  border:1px solid var(--line);background:rgba(20,20,20,.6);
  box-shadow:0 10px 30px rgba(0,0,0,.35);
  transition:transform .35s var(--ease), border-color .35s, box-shadow .35s}
a.promo-card.is-link{cursor:pointer}
.promo-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:transform .5s var(--ease)}
.promo-card .promo-title{position:absolute;left:0;right:0;bottom:0;z-index:2;
  padding:22px 14px 10px;font-size:14px;letter-spacing:.06em;color:#fff;
  text-align:left;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.78) 100%)}
a.promo-card.is-link:hover{transform:translateY(-4px);
  border-color:var(--accent);
  box-shadow:0 16px 40px rgba(0,0,0,.5)}
a.promo-card.is-link:hover img{transform:scale(1.06)}

/* 动态 / 锦囊列表 */
.feed-list{list-style:none;display:flex;flex-direction:column;gap:2px}
.feed-list li{display:flex;gap:18px;align-items:baseline;
  padding:15px 4px;border-bottom:1px solid rgba(244,242,238,.09)}
.feed-date{flex-shrink:0;width:92px;font-size:12px;letter-spacing:.05em;
  color:var(--accent)}
.feed-text{font-size:14.5px;line-height:1.75;color:rgba(244,242,238,.85)}
@media (max-width:768px){
  .feed-list li{flex-direction:column;gap:5px;padding:13px 2px}
  .feed-date{width:auto}
}

/* 文章列表（圈内情报 / 乐手锦囊）：时间 + 可点击标题 */
.article-list{list-style:none;display:flex;flex-direction:column;gap:2px}
.article-item{display:flex;gap:18px;align-items:baseline;
  padding:14px 4px;border-bottom:1px solid rgba(244,242,238,.09)}
.article-date{flex-shrink:0;width:92px;font-size:12px;letter-spacing:.05em;color:var(--accent)}
.article-title-btn{appearance:none;background:none;border:0;padding:0;cursor:pointer;
  text-align:left;font-size:15px;line-height:1.7;color:rgba(244,242,238,.9);
  transition:color .18s ease}
.article-title-btn:hover{color:var(--accent)}
@media (max-width:768px){
  .article-item{flex-direction:column;gap:5px;padding:12px 2px}
  .article-date{width:auto}
  .article-title-btn{font-size:14.5px}
}

/* 文章弹窗 */
.article-modal{position:fixed;inset:0;z-index:1000;display:none;
  align-items:center;justify-content:center;padding:24px;
  background:rgba(8,7,6,.66);backdrop-filter:blur(3px)}
.article-modal.is-open{display:flex}
.article-modal-card{position:relative;width:min(680px,100%);max-height:86vh;overflow:auto;
  background:#1b1713;border:1px solid rgba(232,176,75,.35);border-radius:14px;
  box-shadow:0 24px 60px rgba(0,0,0,.6);padding:30px 32px 32px}
.article-modal-close{position:absolute;top:12px;right:14px;width:38px;height:38px;
  appearance:none;background:none;border:0;cursor:pointer;font-size:26px;line-height:1;
  color:rgba(244,242,238,.7);transition:color .18s ease}
.article-modal-close:hover{color:var(--accent)}
.article-modal-date{font-size:12px;letter-spacing:.08em;color:var(--accent);margin-bottom:8px}
.article-modal-title{font-size:21px;line-height:1.45;color:#f4f2ee;margin:0 0 18px;font-weight:600}
.article-modal-body{font-size:15px;line-height:1.9;color:rgba(244,242,238,.86)}
.article-modal-body img{max-width:100%;height:auto;border-radius:8px;display:block;margin:14px 0}
.article-modal-image{width:100%;object-fit:cover;margin:0 0 20px;max-height:300px;
  border-radius:8px;display:block}
body.article-modal-open{overflow:hidden}
@media (max-width:768px){
  .article-modal{padding:14px}
  .article-modal-card{padding:24px 20px 26px;max-height:90vh}
  .article-modal-title{font-size:18px}
}

/* 内容整屏板块（无线框，仅柔和压暗保证文字可读） */
.content-inner{max-width:860px;width:100%;padding:calc(var(--bar-h) + 24px) 8vw 70px}
.crumb{font-size:11px;letter-spacing:.24em;color:var(--accent);margin-bottom:20px}
.content-block h2.title{font-size:clamp(28px,4.2vw,48px);font-weight:700;
  margin-bottom:24px;letter-spacing:.04em}
.block{margin-top:24px}
.block h3{font-size:15px;letter-spacing:.18em;color:var(--accent);margin-bottom:12px;font-weight:600}
.block p{font-size:15px;line-height:1.9;color:rgba(244,242,238,.84);max-width:640px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:8px}
.card{border:1px solid var(--line);padding:20px;border-radius:14px;background:rgba(255,255,255,.03)}
.card b{display:block;font-size:14px;margin-bottom:8px;letter-spacing:.08em}
.card span{font-size:13px;color:var(--muted);line-height:1.7}
.note{font-size:12.5px;color:var(--muted);border-left:2px solid var(--accent);padding-left:14px;line-height:1.8}

/* 板块淡入 */
.content-block{opacity:0;transform:translateY(28px);
  transition:opacity .9s var(--ease), transform .9s var(--ease)}
.content-block.is-in{opacity:1;transform:none}

/* 末屏页脚（同样整屏，无线框） */
.footer-end{align-items:flex-end;justify-content:flex-start;
  background:linear-gradient(180deg, rgba(0,0,0,.15), rgba(0,0,0,.55))}
.footer-end span{display:block;padding:0 8vw 60px;
  font-size:11px;letter-spacing:.14em;color:rgba(244,242,238,.45)}

/* ============ 手机端 ============ */
@media (max-width:768px){
  /* v=20261014：顶栏实际 62px，同步变量，推广位/hero 让位计算才准 */
  :root{--bar-h:62px}
  .topbar{height:62px;padding:0 16px;gap:10px}
  .brand{gap:8px;min-width:0;flex:0 1 auto}
  .brand-logo{height:32px;flex:0 0 auto}
  .brand-name{font-size:13px;letter-spacing:.02em;
    min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  /* 右侧控件组绝不被压缩，保证语言切换/菜单始终可见可点 */
  .topbar-right{flex:0 0 auto;gap:9px}
  .mainnav{display:none}
  .tool-link span{display:none}
  .tool-link{padding:7px 12px}
  .tool-link::before{content:"🥁"}

  /* 汉堡：移入顶栏右侧 */
  .menu-fab{display:flex;flex-direction:column;justify-content:center;gap:5px;
    width:40px;height:36px;border-radius:99px;
    background:rgba(20,20,20,.6);border:1px solid var(--line);align-items:center}
  .menu-fab span{width:18px;height:1.5px;background:var(--white);transition:.3s;display:block}
  body.nav-open .menu-fab span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
  body.nav-open .menu-fab span:nth-child(2){opacity:0}
  body.nav-open .menu-fab span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

  /* 抽屉 */
  .sidenav{display:block;position:fixed;top:0;right:0;transform:translateX(100%);
    height:100%;height:100dvh;width:82%;max-width:340px;z-index:45;
    background:rgba(12,12,12,.98);backdrop-filter:blur(16px);
    padding:78px 22px 26px;
    transition:transform .45s var(--ease);
    overflow-y:auto;-webkit-overflow-scrolling:touch}
  body.nav-open .sidenav{transform:none}
  .nav-list{list-style:none;display:flex;flex-direction:column;gap:0}
  .nav-item{border-bottom:1px solid var(--line)}
  .nav-link{display:flex;align-items:center;justify-content:space-between;
    width:100%;padding:17px 2px;
    font-size:17px;letter-spacing:.06em;color:var(--muted)}
  .nav-link .nav-caret{font-size:12px;transition:transform .3s var(--ease)}
  .nav-item.is-open .nav-link .nav-caret{transform:rotate(180deg)}

  /* 抽屉子菜单：整块分行、缩进、分隔线，杜绝重叠 */
  .subnav{display:none;list-style:none;flex-direction:column;
    background:rgba(255,255,255,.03);border-top:1px solid var(--line)}
  .nav-item.is-open>.subnav{display:flex}
  .subnav a{display:flex;align-items:center;min-height:52px;
    padding:15px 16px 15px 30px;
    font-size:15px;letter-spacing:.05em;color:var(--muted);line-height:1.4;
    border-bottom:1px solid rgba(244,242,238,.08)}
  .subnav li:last-child a{border-bottom:0}
  .subnav a::before{content:"·";margin-right:12px;color:var(--accent)}
  .subnav a:active,.subnav a.is-active{color:var(--white);background:rgba(232,176,75,.08)}
  .sidenav-foot{display:flex;gap:18px;margin-top:26px;padding:0 2px;
    font-size:11px;letter-spacing:.14em;color:var(--muted)}
  .sidenav-foot a:hover{color:var(--white)}

  .nav-scrim{position:fixed;inset:0;z-index:35;background:rgba(0,0,0,.5);
    opacity:0;pointer-events:none;transition:.4s}
  body.nav-open .nav-scrim{opacity:1;pointer-events:auto}

  .hero{padding:0 24px}
  /* v=20261014：首屏顶部固定了推广卡轮播，hero 整组（标题/副标题/两个工具入口）
     改为从推广卡下方开始排布，不再垂直居中钻进卡片区。
     顶部预留 = 顶栏52 + 卡上间距12 + 卡高(72vw/2.333, 上限184) + 圆点21 + 余量；
     用 dvh 动态表达，旋转/分屏时自动重算 */
  /* hero 让位量与推广位实际占用严格对应：
     推广位总高 = top间距12 + 卡高 min(184,30.9vw) + 圆点行(mt8+高5=13)；
     margin-top = 顶栏 + 上述 + 留白 */
  .hero-section{align-items:flex-start}
  .hero{margin-top:calc(var(--bar-h) + env(safe-area-inset-top,0px) + 12px + min(184px,30.9vw) + 13px + 3vh);
    width:100%}
  .scroll-hint{left:24px;bottom:30px}
  /* 矮屏（iPhone 6/7/8/SE2 等 667 高）：留白改固定小值，字号间距收紧 */
  @media(max-height:700px){
    .hero{margin-top:calc(var(--bar-h) + env(safe-area-inset-top,0px) + 12px + min(184px,30.9vw) + 13px + 10px)}
    .hero-kicker{margin-bottom:12px}
    .hero-title{font-size:clamp(32px,8.5vw,44px)}
    .hero-sub{margin-top:14px}
    .app-launch-mobile{margin-top:34px}
  }
  @media(max-height:600px){
    .hero{margin-top:calc(var(--bar-h) + env(safe-area-inset-top,0px) + 12px + min(184px,30.9vw) + 13px + 6px)}
    .hero-kicker{margin-bottom:8px;font-size:11px}
    .hero-title{font-size:clamp(28px,8vw,38px)}
    .hero-sub{margin-top:10px;font-size:12px}
    .app-launch-mobile{margin-top:22px}
  }
  .content-inner{padding:80px 24px 80px}
  .footer-end span{padding:0 24px 50px}

  /* 推广位：隐藏 PC 竖排，显示手机轮播。仍在首屏顶部居中，保持原大卡观感
     （v=20261014：原满宽大卡压住 hero 标题；现宽 min(430px,72vw) 居中，
     并由下方 .hero-section 的 padding-top 让整组文字/按钮下移避让，不再重叠） */
  .promo-pc{display:none}
  .promo-mobile{display:block}
  .promo-mobile{position:absolute;left:0;right:0;
    top:calc(var(--bar-h) + env(safe-area-inset-top, 0px) + 12px);z-index:12;padding:0 20px}
  /* 卡片宽：iPad mini 竖屏 430px 封顶（卡高约 184px），手机 72vw */
  .promo-carousel{width:min(430px,72vw);margin:0 auto;overflow:hidden;border-radius:14px}
  .promo-track{display:flex;will-change:transform;
    /* 关键：横向手势交给 JS 轮播，纵向仍可滚动页面。
       不写这句时真机浏览器会把横滑吞掉（触发翻页/滚动→pointercancel），表现为划不动。 */
    touch-action:pan-y}
  /* 手机端每张卡占满轮播容器宽，21:9 小卡（v=20261014 由满宽缩小，
     58vw 在 iPhone 上高约 93px、iPad mini 竖屏取上限 430px 高约 184px） */
  .promo-mobile .promo-card{flex:0 0 100%;width:100%;aspect-ratio:21/9;
    border-radius:12px}
  .promo-mobile .promo-title{font-size:13px;padding:18px 14px 8px;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .promo-dots{display:flex;justify-content:center;gap:6px;margin-top:8px}
  .promo-dots .dot{width:5px;height:5px;border-radius:50%;
    background:rgba(244,242,238,.3);transition:.3s}
  .promo-dots .dot.on{background:var(--accent);width:14px;border-radius:99px}
  /* 超矮屏（手机横屏，高 ≤480px）：纵向空间紧，推广卡压到最小并取消
     hero 动态让位（此高度下卡片本身只有约 60-90px，固定小余量即可） */
  @media(max-height:480px){
    .promo-mobile{padding:0 14px;
      top:calc(var(--bar-h) + env(safe-area-inset-top, 0px) + 6px)}
    .promo-carousel{width:min(230px,34vw);border-radius:10px}
    .promo-mobile .promo-title{font-size:12px;padding:10px 12px 5px}
    .promo-dots{margin-top:5px}
    /* 卡高 = 轮播宽 min(230,34vw)/2.333 = min(99,14.6vw)；圆点行 mt5+5=10+1 */
    .hero{margin-top:calc(var(--bar-h) + env(safe-area-inset-top,0px) + 6px + min(99px,14.6vw) + 11px);
      padding-left:calc(24px + env(safe-area-inset-left,0px));
      padding-right:calc(24px + env(safe-area-inset-right,0px))}
    /* 装饰性眉题在横屏矮视口隐藏，给工具入口让出纵向空间 */
    .hero-kicker{display:none}
    .hero-title{font-size:clamp(24px,6vh,34px);line-height:1.1}
    .hero-sub{margin-top:4px;font-size:12px}
    .app-launch-mobile{margin-top:2px}
    /* 横屏矮视口内容已满，滚动提示与工具入口重叠，隐藏之（仍可上下滑动） */
    .scroll-hint{display:none}
  }

  /* 仅最底层背景向左偏移，露出画面偏左的乐器；
     成员视频层(.member-video)与文字层不做偏移。
     object-position 配 object-fit:cover：内容左移、右侧由放大裁切补齐，不露黑边 */
  .bg-photo,.bg-video{object-position:28% center}

  /* 手机端弱化强制吸附，避免内容较高时被裁切、难以自由滚动 */
  .scroll{scroll-snap-type:none}
  .snap-section{scroll-snap-align:none}
  .content-block{height:auto;min-height:100vh;min-height:100dvh}
}

@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition-duration:.01ms!important}
  .scroll{scroll-behavior:auto}
}

#probeHud{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:9999;background:rgba(0,0,0,.82);color:#fff;font-size:15px;line-height:1.5;padding:14px 18px;border-radius:10px;max-width:86vw;text-align:center;pointer-events:none}
