/* ============================================================
   三景文化 SUNVIEWS · 共享样式 site.css
   A. 从 index.html 内联 <style> 逐字搬入（值不动）
   B. 追加复用现有变量的新组件（内页 / 特效）
   ============================================================ */

/* 跨文档页面转场（View Transitions，声明放前部才对导航生效） */
@view-transition{ navigation:auto; }

/* ============================================================
   A · 原有全站样式（VERBATIM，与 index.html 一致）
   ============================================================ */

  *{margin:0;padding:0;box-sizing:border-box}
  :root{
    /* 深空科技暗色系 */
    --bg:#07070a;
    --bg-1:#0c0c11;
    --bg-2:#131319;
    --surface:rgba(255,255,255,.028);
    --surface-h:rgba(255,255,255,.055);
    --line:rgba(255,255,255,.09);
    --line-s:rgba(255,255,255,.15);
    --tx:#f4f3f1;
    --tx-2:#a4a4ac;
    --tx-3:#6c6c76;
    /* 刺桐红 —— 唯一强调色（海丝之魂） */
    --brand:#e0472d;
    --brand-2:#ff6f43;
    --brand-3:#ff9a6c;
    --glow:rgba(224,71,45,.45);
    --gold:#c8a15c;
    --jade:#38a58f;
    --r:20px;
    --ease:cubic-bezier(.22,.7,.16,1);
  }
  html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overscroll-behavior-y:none}
  body{
    font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","PingFang SC","HarmonyOS Sans SC","Microsoft YaHei",system-ui,sans-serif;
    background:var(--bg);color:var(--tx);line-height:1.7;-webkit-font-smoothing:antialiased;
    overflow-x:hidden;letter-spacing:.1px;overscroll-behavior-y:none;
  }
  .wrap{max-width:1180px;margin:0 auto;padding:0 28px}
  a{text-decoration:none;color:inherit}
  img{display:block;max-width:100%}
  ::selection{background:var(--brand);color:#fff}

  /* 全局细噪点 + 光标柔光 */
  .grain{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.035;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
  #spot{position:fixed;width:620px;height:620px;border-radius:50%;pointer-events:none;z-index:0;
    background:radial-gradient(circle,rgba(224,71,45,.10),transparent 62%);
    transform:translate(-50%,-50%);transition:opacity .5s;opacity:0;filter:blur(8px)}

  /* ===== 渐显 ===== */
  .rv{opacity:0;transform:translateY(30px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
  .rv.in{opacity:1;transform:none}
  .d1{transition-delay:.09s}.d2{transition-delay:.18s}.d3{transition-delay:.27s}.d4{transition-delay:.36s}.d5{transition-delay:.45s}

  /* ===== 顶栏 ===== */
  header{position:fixed;top:0;left:0;right:0;z-index:80;transition:all .4s var(--ease)}
  header.on{background:rgba(9,9,13,.72);backdrop-filter:saturate(160%) blur(18px);border-bottom:1px solid var(--line)}
  .nav{display:flex;align-items:center;justify-content:space-between;height:72px}
  .brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:18px;letter-spacing:.4px}
  .brand img{width:38px;height:38px;border-radius:10px}
  .brand small{display:block;font-size:9.5px;font-weight:600;letter-spacing:3px;color:var(--tx-3)}
  .nav-links{display:flex;gap:32px;align-items:center}
  .nav-links a{font-size:14.5px;font-weight:500;color:var(--tx-2);transition:color .25s}
  .nav-links a:hover{color:var(--tx)}
  .nav-cta{padding:9px 19px;border-radius:30px;font-weight:600;font-size:14px;color:#fff!important;
    background:linear-gradient(135deg,var(--brand),var(--brand-2));box-shadow:0 6px 22px var(--glow);transition:transform .2s,box-shadow .25s}
  .nav-cta:hover{transform:translateY(-2px);box-shadow:0 10px 30px var(--glow)}
  .burger{display:none;flex-direction:column;gap:5px;width:34px;height:34px;justify-content:center;align-items:center;cursor:pointer}
  .burger span{width:20px;height:1.6px;background:var(--tx);border-radius:2px;transition:.3s}
  .burger.x span:nth-child(1){transform:translateY(6.6px) rotate(45deg)}
  .burger.x span:nth-child(2){opacity:0}
  .burger.x span:nth-child(3){transform:translateY(-6.6px) rotate(-45deg)}
  .mobile{position:fixed;inset:0;z-index:79;background:rgba(7,7,10,.97);backdrop-filter:blur(20px);
    display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;
    opacity:0;pointer-events:none;transition:opacity .35s}
  .mobile.show{opacity:1;pointer-events:auto}
  .mobile a{font-size:24px;font-weight:700;padding:14px;color:var(--tx-2);transition:color .2s}
  .mobile a:hover{color:var(--brand-2)}
  @media(max-width:880px){.nav-links{display:none}.burger{display:flex}}

  /* ===== HERO ===== */
  .hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden}
  .hero-bg{position:absolute;inset:0;z-index:0;
    background:
      radial-gradient(1300px 620px at 76% -6%,rgba(224,71,45,.20),transparent 55%),
      radial-gradient(1000px 640px at 6% 42%,rgba(56,165,143,.10),transparent 55%),
      radial-gradient(900px 500px at 88% 88%,rgba(200,161,92,.10),transparent 55%)}
  .hero-grid{position:absolute;inset:0;z-index:0;opacity:.5;
    background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
    background-size:66px 66px;
    mask-image:radial-gradient(1100px 640px at 50% 36%,#000,transparent 78%);
    -webkit-mask-image:radial-gradient(1100px 640px at 50% 36%,#000,transparent 78%)}
  .hero-inner{position:relative;z-index:3;padding-top:80px}
  .eyebrow{display:inline-flex;align-items:center;gap:10px;padding:8px 16px;border:1px solid var(--line);
    border-radius:30px;font-size:12px;letter-spacing:2px;color:var(--tx-2);background:var(--surface);text-transform:uppercase}
  .eyebrow i{width:6px;height:6px;border-radius:50%;background:var(--brand-2);box-shadow:0 0 10px var(--brand-2);animation:blink 2.4s infinite}
  @keyframes blink{0%,100%{opacity:1}50%{opacity:.35}}
  .hero h1{font-size:clamp(42px,7.4vw,92px);line-height:1.02;font-weight:860;letter-spacing:-.03em;margin:26px 0 24px}
  .hero h1 .g{background:linear-gradient(108deg,#ff9a6c 0%,var(--brand) 46%,var(--gold) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
  .hero .sub{font-size:clamp(16px,2.1vw,21px);color:var(--tx-2);max-width:620px;font-weight:400}
  .hero .sub b{color:var(--tx);font-weight:600}
  .hero-cta{margin-top:40px;display:flex;gap:14px;flex-wrap:wrap}
  .btn{display:inline-flex;align-items:center;gap:9px;padding:15px 28px;border-radius:14px;font-weight:600;font-size:15px;transition:transform .18s var(--ease),box-shadow .3s,background .3s}
  .btn svg{width:17px;height:17px}
  .btn-p{background:linear-gradient(135deg,var(--brand),var(--brand-2));color:#fff;box-shadow:0 12px 34px var(--glow)}
  .btn-p:hover{box-shadow:0 18px 46px var(--glow)}
  .btn-o{background:var(--surface);color:var(--tx);border:1px solid var(--line-s)}
  .btn-o:hover{background:var(--surface-h)}
  .metrics{margin-top:70px;display:grid;grid-template-columns:repeat(4,auto);gap:0 56px}
  .metric b{font-size:clamp(28px,4vw,46px);font-weight:850;letter-spacing:-.02em;
    background:linear-gradient(120deg,#fff,#d8c3ac);-webkit-background-clip:text;background-clip:text;color:transparent;display:block;line-height:1}
  .metric span{font-size:13px;color:var(--tx-3);letter-spacing:.4px;margin-top:8px;display:block}
  @media(max-width:720px){.metrics{grid-template-columns:1fr 1fr;gap:34px 40px}}
  .scroll-ind{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:3;color:var(--tx-3);font-size:11px;letter-spacing:3px;text-align:center}
  .mouse{width:23px;height:36px;border:1.5px solid var(--line-s);border-radius:14px;margin:0 auto 9px;position:relative}
  .mouse::after{content:"";position:absolute;top:7px;left:50%;transform:translateX(-50%);width:3px;height:7px;border-radius:3px;background:var(--brand-2);animation:scw 1.7s infinite}
  @keyframes scw{0%{opacity:0;top:6px}40%{opacity:1}80%{opacity:0;top:17px}}

  /* ===== 客户信任条 ===== */
  .trust{padding:46px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg-1)}
  .trust .lab{text-align:center;font-size:12px;letter-spacing:3px;color:var(--tx-3);text-transform:uppercase;margin-bottom:30px}
  .marquee{overflow:hidden;position:relative;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);
    mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
  .track{display:flex;gap:52px;width:max-content;animation:scrollx 44s linear infinite;align-items:center}
  .marquee:hover .track{animation-play-state:paused}
  @keyframes scrollx{to{transform:translateX(-50%)}}
  .track span{font-size:17px;font-weight:600;color:var(--tx-3);white-space:nowrap;transition:color .3s;letter-spacing:.3px}
  .track span:hover{color:var(--tx)}
  .track.r2{animation-duration:56s;animation-direction:reverse}

  /* ===== 通用 section ===== */
  section{padding:118px 0;position:relative}
  .tag{display:inline-block;font-size:12px;letter-spacing:3.5px;color:var(--brand-2);font-weight:700;margin-bottom:16px;text-transform:uppercase}
  .h2{font-size:clamp(30px,4.6vw,52px);font-weight:850;letter-spacing:-.025em;line-height:1.12}
  .lead{color:var(--tx-2);font-size:17px;max-width:620px;margin-top:18px;font-weight:400}
  .center{text-align:center}.center .lead{margin-left:auto;margin-right:auto}

  /* 浅色区块（呼吸节奏） */
  .light{--tx:#101014;--tx-2:#565660;--tx-3:#8a8a94;--surface:#fff;--surface-h:#fff;
    --line:rgba(0,0,0,.08);--line-s:rgba(0,0,0,.14);
    background:linear-gradient(180deg,#f7f5f2,#f1eee9);color:var(--tx)}
  .light .tag{color:var(--brand)}

  /* ===== 卷包 AI ===== */
  .jb{background:radial-gradient(1000px 600px at 82% 8%,rgba(224,71,45,.14),transparent 58%),linear-gradient(180deg,#09090d,#101015)}
  .jb .tag{color:var(--gold)}
  .jb-top{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center;margin-bottom:64px}
  @media(max-width:900px){.jb-top{grid-template-columns:1fr;gap:44px}}
  .jb-top h2{font-size:clamp(30px,4.6vw,50px);font-weight:850;letter-spacing:-.025em;margin:10px 0 22px;line-height:1.12}
  .jb-top h2 .g{background:linear-gradient(120deg,#ffb98a,var(--brand));-webkit-background-clip:text;background-clip:text;color:transparent}
  .jb-top p{color:var(--tx-2);font-size:16px;margin-bottom:15px}
  .jb-top p b{color:#fff;font-weight:600}
  .jb-store{margin-top:26px;display:inline-flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:13.5px;color:var(--tx-3)}
  .jb-store b{color:var(--tx);background:var(--surface);border:1px solid var(--line);padding:6px 13px;border-radius:20px;font-weight:600}
  .jb-visual{position:relative;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center}
  .jb-visual .glow{position:absolute;width:78%;height:78%;border-radius:50%;background:radial-gradient(circle,rgba(224,71,45,.5),transparent 62%);filter:blur(26px);animation:pulse 4.5s ease-in-out infinite}
  @keyframes pulse{0%,100%{transform:scale(1);opacity:.75}50%{transform:scale(1.09);opacity:1}}
  .jb-visual img{width:60%;border-radius:50%;box-shadow:0 40px 90px rgba(0,0,0,.6);position:relative;z-index:2}
  .jb-visual .orbit{position:absolute;border:1px solid rgba(255,255,255,.1);border-radius:50%}
  .jb-visual .o1{width:74%;height:74%;animation:spin 26s linear infinite}
  .jb-visual .o2{width:94%;height:94%;animation:spin 42s linear infinite reverse}
  .jb-visual .dot{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--brand-2);box-shadow:0 0 14px var(--brand-2);top:6%;left:50%}
  @keyframes spin{to{transform:rotate(360deg)}}
  .cap-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
  @media(max-width:900px){.cap-grid{grid-template-columns:repeat(2,1fr)}}
  .cap{padding:22px 20px;border:1px solid var(--line);border-radius:16px;background:var(--surface);transition:transform .25s var(--ease),background .3s,border-color .3s}
  .cap:hover{transform:translateY(-5px);background:var(--surface-h);border-color:var(--line-s)}
  .cap .ic{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;
    background:linear-gradient(135deg,rgba(224,71,45,.16),rgba(200,161,92,.12));margin-bottom:14px;color:var(--brand-2)}
  .cap .ic svg{width:21px;height:21px}
  .cap h4{font-size:15.5px;font-weight:700;margin-bottom:5px}
  .cap p{font-size:12.8px;color:var(--tx-3);line-height:1.6}

  /* ===== 业务 ===== */
  .biz-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:52px}
  @media(max-width:900px){.biz-grid{grid-template-columns:1fr 1fr}}
  @media(max-width:620px){.biz-grid{grid-template-columns:1fr}}
  .biz{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:32px 30px;transition:transform .25s var(--ease),box-shadow .3s,border-color .3s;position:relative;overflow:hidden}
  .light .biz{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.03)}
  .biz::after{content:"";position:absolute;inset:0;border-radius:var(--r);padding:1px;background:linear-gradient(135deg,var(--brand),transparent 50%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .35s}
  .biz:hover{transform:translateY(-6px);box-shadow:0 26px 60px rgba(0,0,0,.12)}
  .biz:hover::after{opacity:1}
  .biz .no{font-size:12px;font-weight:800;color:var(--brand);letter-spacing:1px;opacity:.7}
  .biz .ico{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:var(--brand);
    background:linear-gradient(135deg,rgba(224,71,45,.1),rgba(200,161,92,.12));margin:14px 0 18px}
  .biz .ico svg{width:26px;height:26px}
  .biz h4{font-size:20px;font-weight:800;margin-bottom:11px;letter-spacing:-.01em}
  .biz p{font-size:14px;color:var(--tx-2);margin-bottom:16px;line-height:1.7}
  .biz ul{list-style:none;display:flex;flex-wrap:wrap;gap:7px}
  .biz li{font-size:12.4px;color:var(--tx-2);background:var(--surface-h);border:1px solid var(--line);padding:5px 11px;border-radius:13px}
  .light .biz li{background:#f3efe9;border-color:transparent}
  .biz.feat{background:linear-gradient(150deg,#17131b,#0c0c10);border-color:rgba(200,161,92,.24);color:#fff}
  .biz.feat h4{color:#fff}.biz.feat p{color:#c2c0ca}
  .biz.feat .no{color:var(--gold)}
  .biz.feat .ico{background:rgba(200,161,92,.16);color:var(--gold)}
  .biz.feat li{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.1);color:#e6e4ea}

  /* ===== 案例 ===== */
  .case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:52px}
  @media(max-width:900px){.case-grid{grid-template-columns:1fr 1fr}}
  @media(max-width:600px){.case-grid{grid-template-columns:1fr}}
  .case{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:transform .25s var(--ease),box-shadow .3s}
  .light .case{background:#fff}
  .case:hover{transform:translateY(-6px);box-shadow:0 26px 58px rgba(0,0,0,.14)}
  .case .top{height:118px;display:flex;align-items:flex-end;padding:18px;position:relative;overflow:hidden}
  .case .top::before{content:"";position:absolute;inset:0;opacity:.9}
  .case .top.g1::before{background:linear-gradient(135deg,#2f7d6e,#38a58f)}
  .case .top.g2::before{background:linear-gradient(135deg,#d1442c,#ff6f43)}
  .case .top.g3::before{background:linear-gradient(135deg,#b98a3e,#e0c088)}
  .case .top.g4::before{background:linear-gradient(135deg,#33418c,#5a6ec0)}
  .case .top.g5::before{background:linear-gradient(135deg,#7c336a,#c05a9a)}
  .case .top.g6::before{background:linear-gradient(135deg,#26263a,#44445a)}
  .case .top .ic{position:relative;z-index:2;width:40px;height:40px;border-radius:11px;background:rgba(255,255,255,.18);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;color:#fff}
  .case .top .ic svg{width:21px;height:21px}
  .case .body{padding:22px 24px}
  .case .type{font-size:11.5px;color:var(--brand-2);font-weight:700;letter-spacing:.5px;text-transform:uppercase}
  .light .case .type{color:var(--brand)}
  .case h4{font-size:17px;font-weight:800;margin:8px 0 9px;letter-spacing:-.01em}
  .case p{font-size:13.4px;color:var(--tx-2);line-height:1.65}

  /* ===== 海丝起源 ===== */
  .heritage{background:linear-gradient(180deg,#0a0a0e,#111016)}
  .heritage .row{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
  @media(max-width:840px){.heritage .row{grid-template-columns:1fr;gap:40px}}
  .heritage h3{font-size:clamp(26px,3.6vw,38px);font-weight:820;line-height:1.28;margin-bottom:22px;letter-spacing:-.02em}
  .heritage h3 em{font-style:normal;color:var(--brand-2)}
  .heritage p{color:var(--tx-2);font-size:15.6px;margin-bottom:15px}
  .heritage p b{color:var(--tx);font-weight:600}
  .heritage .motto{color:var(--gold);font-weight:700;font-size:18px;letter-spacing:2px;margin-top:22px}
  .hv{aspect-ratio:1/1;border-radius:26px;position:relative;overflow:hidden;
    background:radial-gradient(circle at 50% 40%,rgba(224,71,45,.85),rgba(150,45,28,.6) 46%,#1a0d0b 100%);
    box-shadow:0 40px 90px rgba(150,45,28,.4);display:flex;align-items:center;justify-content:center}
  .hv::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 32% 30%,rgba(200,161,92,.5),transparent 42%)}
  .hv img{width:54%;border-radius:50%;box-shadow:0 26px 60px rgba(0,0,0,.5);position:relative;z-index:2}
  .hv .ring{position:absolute;width:80%;height:80%;border:1px dashed rgba(255,255,255,.3);border-radius:50%;animation:spin 44s linear infinite}

  /* ===== 文化 + 关于 ===== */
  .cult-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:52px}
  @media(max-width:840px){.cult-grid{grid-template-columns:repeat(2,1fr)}}
  .cult{padding:30px 20px;border:1px solid var(--line);border-radius:18px;background:var(--surface);text-align:center;transition:transform .25s var(--ease),background .3s}
  .cult:hover{transform:translateY(-6px);background:rgba(224,71,45,.08)}
  .cult .big{font-size:30px;font-weight:850;background:linear-gradient(120deg,#ff9a6c,var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}
  .cult p{font-size:13px;color:var(--tx-3);margin-top:8px}
  .about-cols{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:88px}
  @media(max-width:840px){.about-cols{grid-template-columns:1fr;gap:44px}}
  .timeline{position:relative;padding-left:30px}
  .timeline::before{content:"";position:absolute;left:6px;top:6px;bottom:6px;width:1.5px;background:linear-gradient(180deg,var(--brand),var(--gold),transparent)}
  .tl{position:relative;padding-bottom:36px}
  .tl:last-child{padding-bottom:0}
  .tl::before{content:"";position:absolute;left:-30px;top:5px;width:13px;height:13px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px rgba(224,71,45,.18)}
  .tl .yr{font-size:14px;font-weight:800;color:var(--brand-2)}
  .tl h4{font-size:17px;font-weight:700;margin:5px 0 6px}
  .tl p{font-size:14px;color:var(--tx-2)}

  /* ===== 联系 ===== */
  .contact{background:linear-gradient(160deg,#0d0d12,#09090d)}
  .contact-head{max-width:640px;margin:0 auto 56px;text-align:center}
  .contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
  @media(max-width:900px){.contact-grid{grid-template-columns:1fr 1fr}}
  @media(max-width:560px){.contact-grid{grid-template-columns:1fr}}
  .cc{padding:30px 28px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);transition:transform .25s var(--ease),background .3s,border-color .3s;display:block}
  .cc:hover{transform:translateY(-5px);background:var(--surface-h);border-color:var(--line-s)}
  .cc .ic{width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;color:var(--brand-2);
    background:linear-gradient(135deg,rgba(224,71,45,.15),rgba(200,161,92,.1));margin-bottom:18px}
  .cc .ic svg{width:23px;height:23px}
  .cc .k{font-size:12px;color:var(--tx-3);letter-spacing:1px;text-transform:uppercase;margin-bottom:6px}
  .cc .v{font-size:19px;font-weight:800;letter-spacing:-.01em;line-height:1.35}
  .cc .v small{display:block;font-size:13px;font-weight:500;color:var(--tx-2);margin-top:4px;letter-spacing:0}
  .cc-cta{grid-column:1/-1;margin-top:14px;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:center;
    padding:34px;border-radius:var(--r);background:linear-gradient(135deg,var(--brand),var(--brand-2));text-align:center}
  .cc-cta h3{font-size:clamp(20px,3vw,28px);font-weight:850;color:#fff;flex:1;min-width:260px;text-align:left;letter-spacing:-.01em}
  .cc-cta .btn-w{background:#fff;color:var(--brand);box-shadow:0 12px 34px rgba(0,0,0,.24)}
  @media(max-width:560px){.cc-cta h3{text-align:center}}

  /* ===== 页脚 ===== */
  footer{background:#050508;color:var(--tx-3);padding:70px 0 36px;border-top:1px solid var(--line)}
  .foot-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:44px;padding-bottom:42px;border-bottom:1px solid var(--line)}
  @media(max-width:820px){.foot-grid{grid-template-columns:1fr 1fr;gap:34px}}
  @media(max-width:520px){.foot-grid{grid-template-columns:1fr}}
  .foot-brand{display:flex;align-items:center;gap:12px;color:var(--tx);font-weight:800;font-size:17px;margin-bottom:16px}
  .foot-brand img{width:38px;height:38px;border-radius:10px}
  .foot-col p{font-size:13.6px;line-height:1.9;color:var(--tx-3)}
  .foot-col h5{color:var(--tx);font-size:13px;font-weight:700;letter-spacing:1.5px;margin-bottom:15px;text-transform:uppercase}
  .foot-col a{display:block;font-size:13.8px;color:var(--tx-3);padding:5px 0;transition:color .2s}
  .foot-col a:hover{color:var(--brand-2)}
  .foot-bottom{padding-top:28px;text-align:center;font-size:12.6px;color:#55555e;line-height:2}
  .foot-bottom a{color:var(--tx-3)}.foot-bottom a:hover{color:var(--tx)}

/* ============================================================
   B · 新增共享组件（复用现有变量，无新配色）
   ============================================================ */

  /* ===== B3 · 粒子光流背景画布 + 内容层级兜底 ===== */
  .fx-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.55}
  /* 真实内容永远在特效层之上（hero 内 .hero-inner 有更高 z-index，不受影响） */
  .wrap,main{position:relative;z-index:1}

  /* ===== B1 · 3D 倾斜视差卡 ===== */
  .tilt{perspective:900px}
  .tilt-inner{position:relative;transform-style:preserve-3d;
    transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));
    transition:transform .4s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);
    border:1px solid var(--line);border-radius:var(--r);background:var(--surface);
    will-change:transform}
  .tilt:hover .tilt-inner{border-color:var(--line-s);box-shadow:0 30px 70px rgba(0,0,0,.4)}
  .tilt-glare{position:absolute;inset:0;border-radius:inherit;pointer-events:none;
    background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.28),transparent 45%);
    opacity:0;transition:opacity .3s var(--ease);mix-blend-mode:screen}
  .tilt:hover .tilt-glare{opacity:1}

  /* ===== B2 · 页面转场（View Transitions + 降级） ===== */
  @keyframes vt-out{to{opacity:0;transform:translateY(-10px)}}
  @keyframes vt-in{from{opacity:0;transform:translateY(14px)}}
  ::view-transition-old(root){animation:vt-out .5s var(--ease) both}
  ::view-transition-new(root){animation:vt-in .5s var(--ease) both}
  /* 不支持 View Transitions 时，<main class="page-in"> 初次加载淡入上移兜底 */
  @keyframes page-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
  .page-in{animation:page-in .5s var(--ease) both}
  /* JS 兜底跳转：body 加此类做淡出 */
  body.is-leaving{opacity:0;transition:opacity .22s var(--ease)}

  /* ===== B4 · 内页小首屏 / 面包屑 / 返回 ===== */
  .subhero{position:relative;min-height:46vh;display:flex;flex-direction:column;justify-content:center;
    padding:128px 0 56px;overflow:hidden}
  .subhero .h2{margin:14px 0 0}
  .subhero .lead{margin-top:16px}
  .crumb{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12.5px;letter-spacing:.4px;color:var(--tx-3)}
  .crumb a{color:var(--tx-3);transition:color .2s}
  .crumb a:hover{color:var(--tx)}
  .crumb .sep{color:var(--tx-3);opacity:.5}
  .crumb .cur{color:var(--brand-2);font-weight:600}
  .back{display:inline-flex;align-items:center;gap:8px;margin-top:26px;font-size:14px;font-weight:600;
    color:var(--tx-2);transition:color .2s,transform .2s var(--ease)}
  .back svg{width:16px;height:16px}
  .back:hover{color:var(--tx);transform:translateX(-4px)}

  /* ===== B5 · 内页详情网格 / 要点列表 ===== */
  .detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:start;margin-top:52px}
  @media(max-width:900px){.detail-grid{grid-template-columns:1fr;gap:40px}}
  .spec-list{list-style:none;display:flex;flex-direction:column;gap:14px;margin-top:8px}
  .spec-list li{position:relative;padding:4px 0 4px 18px;font-size:15px;color:var(--tx-2);line-height:1.7;
    border-left:2px solid var(--brand)}
  .spec-list li b{color:var(--tx);font-weight:600}

  /* ===== B6 · 移动端 / 无悬停 / 减少动态 降级 ===== */
  @media(max-width:900px),(hover:none){
    .tilt{perspective:none}
    .tilt-inner{transform:none!important;will-change:auto}
    .tilt-glare{display:none}
  }
  @media(max-width:900px){
    .fx-canvas{opacity:.35}
  }
  @media(prefers-reduced-motion:reduce){
    ::view-transition-old(root),::view-transition-new(root){animation:none!important}
    .page-in{animation:none!important}
    .tilt-inner{transform:none!important;transition:none}
    .tilt-glare{display:none}
    body.is-leaving{transition:none}
  }
