:root{
  --navy:#FFFFFF; --navy-2:#F4F6FD; --blue:#1543FF; --cyan:#0CE8E8;
  --mist:#0a0f24; --ink:#070d20;
  --txt:#0a0f24; --txt-dim:#5b6480; --line:#e6eaf6;
  --glow-blue:rgba(21,67,255,.26); --glow-cyan:rgba(12,232,232,.28);
  --r:18px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:var(--navy); color:var(--txt); line-height:1.55;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
h1,h2,h3,h4,.clash{font-family:"Clash Grotesk","DM Sans",sans-serif; letter-spacing:-.02em; line-height:1.05;}
a{color:inherit; text-decoration:none}
.wrap{max-width:1440px; margin:0 auto; padding:0 28px}
.eyebrow{display:inline-flex; align-items:center; gap:9px; font-size:13px; font-weight:600; letter-spacing:.04em; color:var(--blue); text-transform:uppercase}
.eyebrow::before{display:none}
.grad-text{background:linear-gradient(100deg,#1543FF 0%,#0bb8c8 100%); -webkit-background-clip:text; background-clip:text; color:transparent}
.btn{display:inline-flex; align-items:center; gap:9px; font-weight:600; font-size:15px; padding:14px 26px; border-radius:999px; cursor:pointer; border:none; transition:.25s; font-family:"DM Sans"}
.btn-primary{color:#fff; border:none; border-radius:999px; background:var(--blue);
  box-shadow:0 4px 14px rgba(21,67,255,.28);
  transition:transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease, background-color .25s ease}
.btn-primary:hover{transform:translateY(-1px); background:#0e36d6; box-shadow:0 8px 22px rgba(21,67,255,.4)}
.btn-primary:active{transform:scale(.97)}
.btn-ghost{background:#fff; color:var(--ink); border:1px solid var(--line); border-radius:999px}
.btn-ghost:hover{background:var(--navy-2); border-color:rgba(21,67,255,.35); color:var(--blue)}

/* logo */
.logo{display:flex; align-items:center; gap:10px; font-family:"Clash Grotesk"; font-weight:600; font-size:22px; letter-spacing:.01em; color:var(--ink)}
.logo svg{width:30px; height:30px; flex:none}

/* nav — transparent at top, white frosted-glass capsule on scroll */
header{position:fixed; top:18px; left:0; right:0; z-index:100; transition:top .3s ease, opacity .55s ease, transform .55s ease}
header.idle{opacity:0; transform:translateY(-16px); pointer-events:none}
@media (prefers-reduced-motion: reduce){header.idle{opacity:1; transform:none; pointer-events:auto}}
nav{display:flex; align-items:center; justify-content:space-between; gap:10px; height:60px; padding:0 8px 0 22px; background:transparent; border:1px solid transparent; border-radius:18px; box-shadow:none; transition:background .35s ease, box-shadow .35s ease, border-color .35s ease}
header.scrolled{top:10px}
header.scrolled nav{background:rgba(255,255,255,.78); -webkit-backdrop-filter:blur(40px) saturate(2) brightness(1.05); backdrop-filter:blur(40px) saturate(2) brightness(1.05); border-color:rgba(255,255,255,.4); box-shadow:0 12px 38px rgba(10,15,36,.2), inset 0 0 0 1px rgba(255,255,255,.28)}
.nav-links{display:flex; align-items:center; gap:4px; position:relative}
.nav-item{position:relative; z-index:1}
.nav-item>a{display:flex; align-items:center; gap:6px; padding:9px 15px; font-size:15px; font-weight:500; color:var(--txt-dim); border-radius:11px; transition:color .2s}
.nav-item>a:hover,.nav-item.active>a{color:var(--blue)}
.nav-item .caret{width:7px; height:7px; border-right:1.6px solid currentColor; border-bottom:1.6px solid currentColor; transform:rotate(45deg) translateY(-2px); opacity:.7; transition:transform .28s cubic-bezier(.34,1.1,.3,1)}
.nav-item.active .caret{transform:rotate(225deg) translateY(1px); opacity:1}
/* Spline-style: sliding highlight pill */
.nav-pill{position:absolute; top:50%; left:0; width:0; height:38px; transform:translateY(-50%); border-radius:11px; background:linear-gradient(180deg,rgba(21,67,255,.16),rgba(21,67,255,.10)); box-shadow:inset 0 0 0 1px rgba(21,67,255,.22), 0 6px 18px rgba(21,67,255,.14); opacity:0; pointer-events:none; z-index:0; transition:left .4s cubic-bezier(.34,1.16,.3,1), width .4s cubic-bezier(.34,1.16,.3,1), opacity .25s ease}
.nav-links.pill-on .nav-pill{opacity:1}
/* Spline-style: morphing flyout panel */
.nav-flyout{position:absolute; top:calc(100% + 22px); left:0; opacity:0; visibility:hidden; transform:translateY(8px); transition:left .44s cubic-bezier(.34,1.08,.3,1), opacity .26s ease, transform .26s ease, visibility .26s; z-index:60; pointer-events:none}
.nav-flyout::before{content:""; position:absolute; left:0; top:-26px; width:100%; height:30px}
.nav-flyout.open{opacity:1; visibility:visible; transform:translateY(0); pointer-events:auto}
.nav-flyout-card{position:relative; width:320px; height:0; background:rgba(255,255,255,.98); -webkit-backdrop-filter:blur(24px); backdrop-filter:blur(24px); border-radius:18px; box-shadow:0 0 0 1px var(--line), 0 30px 70px rgba(10,15,36,.16); overflow:hidden; transition:width .46s cubic-bezier(.34,1.04,.3,1), height .46s cubic-bezier(.34,1.04,.3,1); will-change:width,height}
.flyout-panel{position:absolute; top:0; left:0; min-width:300px; padding:12px; opacity:0; transform:translateX(12px); transition:opacity .26s ease, transform .32s cubic-bezier(.34,1.06,.3,1); pointer-events:none}
.flyout-panel.show{opacity:1; transform:none; pointer-events:auto}
.dd-link{display:flex; align-items:center; gap:12px; padding:12px 14px; border-radius:12px; transition:.18s; white-space:nowrap}
.dd-link>span:not(.dd-ic){display:flex; flex-direction:column; gap:1px}
.dd-link:hover{background:rgba(21,67,255,.10)}
.dd-ic{width:38px; height:38px; flex:none; border-radius:10px; display:grid; place-items:center; background:linear-gradient(135deg,rgba(21,67,255,.2),rgba(12,232,232,.16)); border:1px solid var(--line); font-size:18px}
.dd-tt{font-weight:600; font-size:14.5px; color:var(--ink)}
.dd-sb{font-size:12.5px; color:var(--txt-dim)}
.nav-right{display:flex; align-items:center; gap:10px}
.lang{font-size:14px; color:var(--txt-dim); cursor:pointer; padding:8px 12px; border-radius:9px; border:1px solid var(--line)}
.login{font-size:14.5px; font-weight:500; color:var(--txt-dim); padding:0 8px}
.login:hover{color:var(--ink)}
.nav-right .btn-primary{padding:10px 20px; font-size:14px}
.burger{display:none; flex-direction:column; gap:5px; cursor:pointer; padding:8px}
.burger span{width:22px; height:2px; background:var(--ink); border-radius:2px}

/* hero — fully ported from style-3 (velocity); scoped & self-contained (dark local theme) */
.hero{position:relative; min-height:100vh; display:flex; align-items:stretch; overflow:hidden;
  --line:rgba(120,150,255,.16); --txt:#EDEFF7; --txt-dim:#8b96bd; --navy:#000000; --blue-l:#4f78ff;
  background:radial-gradient(120% 90% at 72% 42%,#10204a 0%,#070b18 52%,#03050c 100%); color:var(--txt)}
.hero-video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; pointer-events:none; background:#05070f; opacity:0; transition:opacity .6s ease}
.hero-video.is-ready{opacity:.92}
.hero-rings{position:absolute; inset:0; width:100%; height:100%; z-index:0; pointer-events:none; background:#05070f; opacity:0; transition:opacity .8s ease}
.hero-rings.is-ready{opacity:1}
.hero-rings canvas{display:block; width:100%!important; height:100%!important}
.hero-rings-veil{position:absolute; inset:0; z-index:1; pointer-events:none; background:radial-gradient(90% 120% at 50% 50%,rgba(0,0,0,0) 42%,rgba(3,5,12,.55) 100%),linear-gradient(0deg,rgba(3,5,12,.6) 0%,rgba(0,0,0,0) 48%)}
.hero-veil{position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(90deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.58) 46%,rgba(0,0,0,.32) 100%),linear-gradient(0deg,#000 1%,rgba(0,0,0,.25) 38%,rgba(0,0,0,0) 72%)}
.hero::after{content:""; position:absolute; top:-10%; right:-5%; width:60%; height:120%; background:conic-gradient(from 200deg at 70% 50%,transparent,rgba(21,67,255,.25),rgba(12,232,232,.12),transparent); filter:blur(40px); z-index:1}
.hero-inner{position:relative; z-index:3; width:100%; min-height:100vh; display:flex; flex-direction:column; justify-content:space-between; padding:118px 0 56px; text-align:center}
.hero-top{display:flex; justify-content:space-between; align-items:flex-start; gap:48px; text-align:left}
.hero-top .ht-left{max-width:440px; font-size:15px; line-height:1.65; color:rgba(237,239,247,.8)}
.hero-top .ht-right{max-width:300px; text-align:right; align-self:flex-start; font-family:"DM Mono"; font-size:12.5px; line-height:1.55; letter-spacing:.06em; text-transform:uppercase; color:rgba(237,239,247,.8)}
.hero-mid{flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:88px}
.hero h1{font-size:clamp(26px,7vw,112px); font-weight:500; color:#fff; opacity:.9; line-height:.9; letter-spacing:-.03em; margin:0; max-width:none; text-shadow:0 0 24px rgba(120,160,255,.35)}
.hero h1 .htop{display:inline-block; font-size:1em; font-weight:500; letter-spacing:-.03em; white-space:nowrap}
.hero h1 .hfor{display:block; text-align:center}
html[lang="zh-Hant"] .hero h1 .hfor,html[lang="zh-Hant"] .hero h1 .hbr{display:none}
html[lang="zh-Hant"] .hero h1{line-height:1.12}
.hero .shiny{background:linear-gradient(100deg,#dbe6fb 0%,#dbe6fb 38%,#ffffff 48%,#ffffff 52%,#dbe6fb 62%,#dbe6fb 100%); background-size:200% auto; -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent; animation:shine 6.5s linear infinite}
.hero h1.pv-hidden{opacity:0}
.hero h1.pv-reveal{opacity:.9; transition:opacity .7s ease}
.hero-h1-particles{position:absolute; pointer-events:none; z-index:2}
@keyframes shine{0%{background-position:200% center}100%{background-position:-200% center}}
.hero .hero-cta{display:flex; gap:16px; flex-wrap:wrap; justify-content:center}
.hero .hero-cta .arr{display:inline-block; transition:transform .25s cubic-bezier(.34,1.1,.3,1)}
.hero .btn-cyan:hover .arr{transform:translateX(5px)}
/* unified full-radius (pill) buttons, scoped to hero */
.hero .btn{border-radius:999px; clip-path:none; text-transform:uppercase; letter-spacing:.04em; padding:17px 48px; font-size:16px}
.hero .btn-cyan{color:#fff; border:none; border-radius:999px; text-shadow:0 1px 2px rgba(6,18,80,.4);
  -webkit-backdrop-filter:blur(14px) saturate(190%); backdrop-filter:blur(14px) url(#liquidGlass) saturate(190%);
  background:linear-gradient(180deg, rgba(64,104,255,.58) 0%, rgba(21,67,255,.68) 100%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.24), inset 2px 3.5px 0 -2px rgba(255,255,255,1), inset -2.5px -2.5px 0 -2px rgba(255,255,255,.98), inset -3px -9px 2px -6px rgba(255,255,255,.78), inset 3px 6px 1px -5px rgba(255,255,255,.9), inset 0 0 16px 1px rgba(170,200,255,.4), inset -0.3px -1px 4px 0 rgba(0,0,0,.14), inset -1.5px 2.5px 0 -2px rgba(0,0,0,.22), inset 0 3px 5px -2px rgba(0,0,0,.22), inset 2px -6.5px 1px -4px rgba(0,0,0,.12), 0 1px 6px 0 rgba(8,20,90,.2), 0 9px 24px 0 rgba(21,67,255,.42)}
.hero .btn-cyan:hover{transform:translateY(-1px) scale(1.03); box-shadow:inset 0 0 0 1px rgba(255,255,255,.14), inset 1.8px 3px 0 -2px rgba(255,255,255,1), inset -2px -2px 0 -2px rgba(255,255,255,.9), inset -3px -8px 1px -6px rgba(255,255,255,.7), inset -0.3px -1px 4px 0 rgba(0,0,0,.12), inset -1.5px 2.5px 0 -2px rgba(0,0,0,.2), inset 0 3px 4px -2px rgba(0,0,0,.2), inset 2px -6.5px 1px -4px rgba(0,0,0,.1), 0 2px 8px 0 rgba(8,20,90,.2), 0 10px 26px 0 rgba(21,67,255,.42)}
.hero .btn-cyan:active{transform:scale(.97)}
.hero .btn-ghost{background:transparent; color:#fff; border:1.5px solid var(--line)}
.hero .btn-ghost:hover{border-color:#fff; color:#fff; background:transparent}
/* 两个 CTA 统一：去掉流动描边(premiumBorderFlow) 与扫光(microSheen ::after)；外层光晕默认隐藏仅 hover 显示；去掉内部辉光与熔岩球 */
.fire-btn{animation:none}
.fire-btn::after{display:none}
.fire-btn::before{opacity:0}
.fire-btn .blob1{display:none}
.fire-btn .inner::before{display:none}
/* BOOK A DEMO：纯色描边 + 透明填充（幽灵胶囊） */
.fire-btn.no-flow{background:transparent; border:1.5px solid rgba(255,255,255,.25); padding:0; box-shadow:none}
.fire-btn.no-flow .inner{background:transparent; box-shadow:none}
.fire-btn.no-flow .inner::after{display:none}
.fire-btn.no-flow:hover .inner{background:transparent; box-shadow:none}
.fire-btn.no-flow:hover{border-color:rgba(255,255,255,.5)}
/* GET STARTED — Uiverse (andrei_4206) premium button, brand blue/cyan "cold flame", 60px capsule */
.fire-btn{--brand-blue:#1543ff; --cyan:#0CE8E8; --deep-blue:#0b2ec2; --dark-blue:#001233; position:relative; display:inline-flex; align-items:center; justify-content:center; padding:1.5px; border:0; border-radius:999px; cursor:pointer; overflow:hidden; isolation:isolate; text-decoration:none; background:radial-gradient(circle at 0% 0%,#000 0%,transparent 22%),radial-gradient(circle at 100% 100%,#000 0%,transparent 24%),linear-gradient(120deg,#000 0%,#00030f 16%,#1543ff 34%,#0CE8E8 48%,#0b2ec2 66%,#00030a 82%,#000 100%); background-size:260% 260%; animation:premiumBorderFlow 6s ease-in-out infinite; box-shadow:0 18px 55px rgba(21,67,255,.18),0 0 0 1px rgba(255,255,255,.035) inset; will-change:transform,box-shadow,filter; transform-style:preserve-3d; backface-visibility:hidden; transition:transform 900ms cubic-bezier(.16,1,.3,1),box-shadow 900ms cubic-bezier(.16,1,.3,1),filter 900ms cubic-bezier(.16,1,.3,1)}
.fire-btn::before{content:""; position:absolute; inset:-120%; background:conic-gradient(from 90deg,transparent 0deg,rgba(12,232,232,0) 35deg,rgba(12,232,232,.34) 90deg,rgba(21,67,255,.22) 145deg,rgba(11,46,194,.3) 210deg,rgba(12,232,232,.14) 270deg,transparent 330deg); filter:blur(34px); opacity:.42; transform:scale(.92); animation:haloOrbit 12s linear infinite; transition:opacity 1.15s cubic-bezier(.16,1,.3,1),transform 1.15s cubic-bezier(.16,1,.3,1),filter 1.15s cubic-bezier(.16,1,.3,1); z-index:-2}
.fire-btn::after{content:""; position:absolute; inset:1px; border-radius:inherit; background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.13) 18%,transparent 32%,transparent 100%); background-size:260% 100%; animation:microSheen 5.5s ease-in-out infinite; opacity:.35; pointer-events:none; transition:opacity 1.1s cubic-bezier(.16,1,.3,1),background-position 1.4s cubic-bezier(.16,1,.3,1)}
.fire-btn .blob1{position:absolute; width:260px; height:260px; left:-130px; bottom:-180px; border-radius:999px; background:radial-gradient(circle,rgba(12,232,232,.86) 0%,transparent 58%),radial-gradient(circle,rgba(21,67,255,.45) 22%,transparent 72%); filter:blur(36px); opacity:.62; transform:scale(.96); animation:lavaFloat 8s ease-in-out infinite; transition:opacity 1.1s cubic-bezier(.16,1,.3,1),transform 1.1s cubic-bezier(.16,1,.3,1),filter 1.1s cubic-bezier(.16,1,.3,1); z-index:-1}
.fire-btn .inner{position:relative; z-index:2; padding:19px 34px; border-radius:inherit; overflow:hidden; color:#f2f7ff; font-size:16px; font-weight:600; line-height:1.2; letter-spacing:-.025em; text-transform:uppercase; white-space:nowrap; background:#1543ff; box-shadow:inset 0 1px 0 rgba(255,255,255,.14),inset 0 -18px 34px rgba(0,0,0,.16); transition:transform 1100ms cubic-bezier(.16,1,.3,1),box-shadow 1100ms cubic-bezier(.16,1,.3,1),background 1100ms cubic-bezier(.16,1,.3,1),letter-spacing 1100ms cubic-bezier(.16,1,.3,1),text-shadow 1100ms cubic-bezier(.16,1,.3,1)}
.fire-btn .inner::before{content:""; position:absolute; inset:-180%; background:radial-gradient(circle at 30% 70%,rgba(12,232,232,.26),transparent 28%),radial-gradient(circle at 70% 30%,rgba(21,67,255,.2),transparent 32%),linear-gradient(120deg,transparent 35%,rgba(255,255,255,.1) 48%,transparent 62%); background-size:180% 180%; filter:blur(34px); opacity:.78; animation:innerLuxuryMove 10s ease-in-out infinite; z-index:-1; transition:opacity 1.1s cubic-bezier(.16,1,.3,1),transform 1.1s cubic-bezier(.16,1,.3,1),filter 1.1s cubic-bezier(.16,1,.3,1)}
.fire-btn .inner::after{content:""; position:absolute; inset:0; border-radius:inherit; background:linear-gradient(180deg,rgba(255,255,255,.16),transparent 42%); pointer-events:none}
.fire-btn:hover{transform:translateY(-5px) scale(1.022); box-shadow:0 40px 120px rgba(21,67,255,.34),0 0 80px rgba(12,232,232,.16),0 0 0 1px rgba(255,255,255,.06) inset; filter:saturate(1.08) brightness(1.02); animation-duration:3.2s}
.fire-btn:hover::before{opacity:1; transform:scale(1.14); filter:blur(58px); animation-duration:7s}
.fire-btn:hover::after{opacity:.82; background-size:180% 100%; animation-duration:2.2s}
.fire-btn:hover .blob1{opacity:1; transform:scale(1.18) translate3d(18px,-10px,0); filter:blur(54px); animation-duration:4.5s}
.fire-btn:hover .inner{transform:translateY(-1px) scale(1.004); background:#1036d1; box-shadow:inset 0 1px 0 rgba(255,255,255,.18),inset 0 -24px 44px rgba(0,0,0,.22),0 12px 30px rgba(0,0,0,.18); letter-spacing:-.035em; text-shadow:0 0 22px rgba(12,232,232,.24),0 1px 1px rgba(0,0,0,.72)}
.fire-btn:hover .inner::before{opacity:1; filter:blur(42px); transform:scale(1.08) rotate(10deg); animation-duration:5.5s}
.fire-btn:active{transition-duration:180ms; transform:translateY(-1px) scale(.985); box-shadow:0 12px 34px rgba(21,67,255,.16),0 0 24px rgba(12,232,232,.08); filter:saturate(.98) brightness(.98)}
.fire-btn:active::before{opacity:.72; transform:scale(.94); filter:blur(28px)}
.fire-btn:active .inner{transform:scale(.982) translateY(1px); box-shadow:inset 0 3px 12px rgba(0,0,0,.75),inset 0 -12px 22px rgba(0,0,0,.72); transition-duration:140ms}
.fire-btn:active .blob1{opacity:.62; transform:scale(.92) translate3d(0,0,0); filter:blur(24px); transition-duration:140ms}
.fire-btn:active .inner::before{opacity:.42; transform:scale(.9) rotate(0deg); filter:blur(20px); transition-duration:140ms}
@keyframes premiumBorderFlow{0%{background-position:0% 50%}25%{background-position:65% 20%}50%{background-position:100% 60%}75%{background-position:35% 85%}100%{background-position:0% 50%}}
@keyframes haloOrbit{from{transform:rotate(0deg) scale(.92)}to{transform:rotate(360deg) scale(.92)}}
@keyframes microSheen{0%,35%{background-position:140% 0}65%,100%{background-position:-140% 0}}
@keyframes lavaFloat{0%{transform:translate3d(0,0,0) scale(.96)}50%{transform:translate3d(42px,-24px,0) scale(1.07)}100%{transform:translate3d(0,0,0) scale(.96)}}
@keyframes innerLuxuryMove{0%{transform:translate3d(-2%,2%,0) rotate(0deg); background-position:0% 50%}50%{transform:translate3d(3%,-3%,0) rotate(7deg); background-position:100% 50%}100%{transform:translate3d(-2%,2%,0) rotate(0deg); background-position:0% 50%}}
@media(max-width:760px){.hero-top{flex-direction:column; gap:14px} .hero-top .ht-right{text-align:left} .hero-inner{padding:104px 0 46px}}

/* nav readable over dark hero (top / non-scrolled state only) */
header:not(.scrolled) .logo,
header:not(.scrolled) .nav-item>a,
header:not(.scrolled) .login{color:rgba(237,235,247,.9)}
header:not(.scrolled) .nav-item>a:hover,
header:not(.scrolled) .nav-item.active>a{color:#fff}
header:not(.scrolled) .lang{color:rgba(237,235,247,.9); border-color:rgba(255,255,255,.22)}
header:not(.scrolled) .burger span{background:#ede9f7}
/* 滚动后白色胶囊上：加深文字提升对比度 */
header.scrolled .logo{color:var(--ink)}
header.scrolled .nav-item>a{color:#222a47}
header.scrolled .login{color:#222a47}
header.scrolled .nav-item>a:hover,header.scrolled .nav-item.active>a{color:var(--blue)}
header.scrolled .login:hover{color:var(--ink)}
header.scrolled .lang{color:#222a47; border-color:rgba(10,15,36,.16)}

/* sections */
section{position:relative}
.sec{padding:96px 0}
.sec-head{max-width:680px; margin-bottom:54px}
.sec-head.center{margin-inline:auto; text-align:center}
.sec-head h2{font-size:clamp(30px,3.6vw,46px); font-weight:600; margin:16px 0 14px}
.sec-head p{font-size:17px; color:var(--txt-dim)}

/* trust */
.trust{padding:42px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line)}
.trust p{text-align:center; font-size:13px; letter-spacing:.08em; text-transform:uppercase; color:var(--txt-dim); margin-bottom:24px}
.trust-row{display:flex; flex-wrap:wrap; gap:20px 46px; justify-content:center; align-items:center; opacity:.85}
.trust-row .item{display:flex; align-items:center; gap:9px; font-family:"Clash Grotesk"; font-weight:500; font-size:18px; color:#3a4366}

/* product cards grid */
.feat-grid{display:grid; grid-template-columns:repeat(12,1fr); gap:18px}
.card{background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:30px; position:relative; overflow:hidden; transition:.3s; box-shadow:0 1px 2px rgba(10,15,36,.04)}
.card:hover{border-color:rgba(21,67,255,.35); transform:translateY(-4px); box-shadow:0 24px 60px rgba(10,15,36,.12)}
.card .ic,.prod-text .ic{width:46px; height:46px; border-radius:12px; display:grid; place-items:center; font-size:22px; margin-bottom:18px; background:linear-gradient(135deg,rgba(21,67,255,.22),rgba(12,232,232,.18)); border:1px solid var(--line)}
.card h3,.prod-text h3{font-size:21px; font-weight:600; margin-bottom:10px}
.prod-text h3{font-size:clamp(22px,2.4vw,30px)}
.card p,.prod-text p{font-size:15px; color:var(--txt-dim)}
.prod-text p{font-size:16px;line-height:1.7;max-width:520px}
.card .chip,.prod-text .chip{display:inline-block; font-size:12px; font-weight:600; color:var(--blue); margin-bottom:14px; padding:4px 11px; border-radius:99px; background:rgba(21,67,255,.08); border:1px solid rgba(21,67,255,.2)}
.span-6{grid-column:span 6} .span-4{grid-column:span 4} .span-12{grid-column:span 12} .span-8{grid-column:span 8}
.bullets{list-style:none; margin-top:16px; padding-left:0; margin-left:0; display:flex; flex-direction:column; gap:11px}
.bullets li{display:flex; gap:10px; font-size:14.5px; color:var(--txt-dim)}
.bullets li::before{content:""; width:7px; height:7px; margin-top:7px; flex:none; border-radius:2px; background:linear-gradient(135deg,var(--cyan),var(--blue))}
/* 产品模块 — 特性列表排版（图标 + 粗体标题 + 子要点）；01-04 复用 */
.feat-list{margin-top:30px; gap:24px}
.feat-list .feat{align-items:flex-start; gap:14px}
.feat-list .feat::before{display:none}
.feat-ic{flex:none; width:30px; height:30px; margin-top:1px; color:var(--blue); display:grid; place-items:center}
.feat-ic svg{width:26px; height:26px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round}
.feat-bd{display:flex; flex-direction:column; gap:6px; min-width:0}
.feat-bd b{font-size:19px; font-weight:700; line-height:1.3; letter-spacing:-.01em; color:var(--txt)}
.feat-sub{font-size:14px; line-height:1.55; color:var(--txt-dim)}
#payout .feat-ic{color:#7da2ff}
#payout .feat-sub{color:rgba(255,255,255,.82)}

/* standalone product cards + visuals */
.prod{display:grid;grid-template-columns:1.02fr .98fr;gap:72px;align-items:center}
.prod .prod-text{min-width:0}
.prod.rev .prod-text{order:2}
.prod.rev .prod-vis{order:1}
.pv{width:100%;border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff;box-shadow:0 10px 30px rgba(10,15,36,.06)}
.prod-video{width:100%;height:auto;display:block;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 10px 30px rgba(10,15,36,.06)}
.pv-h{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:700;color:var(--txt);margin-bottom:13px}
.pv-h .s{font-size:11px;color:var(--txt-dim);font-weight:500}
.pv-tag{font-size:11px;font-weight:600;padding:3px 10px;border-radius:99px;background:rgba(21,67,255,.1);color:var(--blue)}
.pv-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:10px;background:var(--navy-2);margin-bottom:7px;font-size:13px}
.pv-row:last-child{margin-bottom:0}
.pv-row .l{display:flex;align-items:center;gap:9px;color:var(--txt-dim)}
.pv-row .v{font-weight:700;color:var(--txt)}
.pv-flag{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;background:rgba(21,67,255,.1)}
.pv-bar{height:7px;border-radius:99px;background:#e6eaf6;overflow:hidden;margin:11px 0 8px}
.pv-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--cyan))}
.pv-note{font-size:11.5px;color:var(--txt-dim)}
.pv-fx-amt{display:flex;align-items:baseline;justify-content:space-between;padding:11px 2px}
.pv-fx-amt .lab{font-size:12px;color:var(--txt-dim)}
.pv-fx-amt .num{font-weight:700;font-size:22px;color:var(--txt);font-family:"Clash Grotesk","DM Sans"}
.pv-fx-mid{display:flex;align-items:center;gap:6px;padding:10px 12px;border-radius:10px;background:var(--navy-2);font-size:12.5px;color:var(--txt-dim)}
.pv-fx-mid b{color:var(--blue);font-weight:700}
.pv-card{border-radius:14px;padding:18px;color:#fff;background:linear-gradient(135deg,#0a1750,var(--blue) 65%,var(--cyan));min-height:142px;display:flex;flex-direction:column;margin-bottom:12px;box-shadow:0 14px 34px rgba(21,67,255,.3)}
.pv-card .brand{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:15px}
.pv-card .no{font-size:16px;letter-spacing:.1em;margin-top:auto;font-weight:600}
.pv-card .meta{display:flex;justify-content:space-between;font-size:11px;opacity:.85;margin-top:8px}

/* bento feature grid (XTransfer-style) */
#products .sec-head{max-width:1000px}
#products .sec-head h2{font-size:clamp(38px,4.6vw,58px); letter-spacing:-.02em; line-height:1.16}
#products .sec-head p{max-width:560px; margin-inline:auto}
.cap-icons{display:flex; justify-content:center; flex-wrap:wrap; gap:56px; margin-top:72px}
.cap-i{display:flex; flex-direction:column; align-items:center; gap:12px; width:104px; cursor:pointer}
.cap-ic{position:relative; color:var(--blue); display:grid; place-items:center; transition:transform .35s cubic-bezier(.2,.8,.2,1), color .35s ease, filter .35s ease}
.cap-ic svg{position:relative; z-index:2; width:54px; height:54px; animation:capfloat 4s ease-in-out infinite; transition:filter .35s ease}
/* 呼吸光晕 */
.cap-ic::before{content:""; position:absolute; z-index:0; left:50%; top:50%; width:84px; height:84px; border-radius:50%; transform:translate(-50%,-50%); background:radial-gradient(circle, rgba(37,99,255,.30), rgba(37,99,255,0) 68%); filter:blur(2px); animation:capglow 4s ease-in-out infinite; pointer-events:none}
/* 错位节奏 */
.cap-i:nth-child(1) .cap-ic svg, .cap-i:nth-child(1) .cap-ic::before{animation-delay:0s}
.cap-i:nth-child(2) .cap-ic svg, .cap-i:nth-child(2) .cap-ic::before{animation-delay:.5s}
.cap-i:nth-child(3) .cap-ic svg, .cap-i:nth-child(3) .cap-ic::before{animation-delay:1s}
.cap-i:nth-child(4) .cap-ic svg, .cap-i:nth-child(4) .cap-ic::before{animation-delay:1.5s}
.cap-i:hover .cap-ic{transform:translateY(-8px) scale(1.14)}
.cap-i:hover .cap-ic svg{animation-play-state:paused}
.cap-lb{font-size:14px; font-weight:600; color:var(--ink); letter-spacing:.01em; white-space:nowrap; opacity:0; transform:translateY(4px); transition:opacity .22s ease, transform .22s ease; pointer-events:none}
.cap-i:hover .cap-lb{opacity:1; transform:translateY(0)}
@keyframes capfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes capglow{0%,100%{opacity:.35; transform:translate(-50%,-50%) scale(.85)}50%{opacity:.8; transform:translate(-50%,-50%) scale(1.18)}}
@media (prefers-reduced-motion: reduce){.cap-ic svg, .cap-ic::before{animation:none!important}}
@media(max-width:560px){.cap-icons{gap:30px} .cap-i{width:76px} .cap-ic svg{width:44px; height:44px} .cap-ic::before{width:64px; height:64px} .cap-lb{font-size:13px; opacity:1; transform:none}}
/* floating secondary nav (appears on scroll) */
.cap-nav{position:fixed; top:84px; left:50%; transform:translate(-50%,-14px); z-index:90; display:flex; gap:4px; padding:7px 9px; border-radius:99px; background:rgba(255,255,255,.72); -webkit-backdrop-filter:blur(22px) saturate(1.7); backdrop-filter:blur(22px) saturate(1.7); border:1px solid rgba(255,255,255,.7); box-shadow:0 16px 46px rgba(10,15,36,.14), inset 0 1px 0 rgba(255,255,255,.6); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .3s ease, transform .3s ease, visibility .3s}
.cap-nav.show{opacity:1; visibility:visible; pointer-events:auto; transform:translate(-50%,0)}
.cap-nav .cn-i{display:flex; align-items:center; color:var(--txt-dim); padding:9px; border-radius:99px; transition:color .2s ease, background .2s ease}
.cap-nav .cn-i svg{width:22px; height:22px; flex:none}
.cap-nav .cn-i .cn-lb{font-size:13px; font-weight:600; max-width:0; margin-left:0; overflow:hidden; white-space:nowrap; opacity:0; transition:max-width .28s ease, opacity .2s ease, margin-left .28s ease}
.cap-nav .cn-i.on{color:var(--blue); background:rgba(21,67,255,.12)}
.cap-nav .cn-i:hover{color:var(--blue); background:rgba(21,67,255,.09)}
.cap-nav .cn-i:hover .cn-lb{max-width:130px; opacity:1; margin-left:7px}
@media(max-width:560px){.cap-nav{top:auto; bottom:18px; gap:2px}}
.prod-text .n{font-family:"DM Mono",ui-monospace,monospace;font-size:13px;color:var(--blue);margin-bottom:14px;letter-spacing:.04em;display:inline-flex;align-items:center;gap:8px}
.prod-text .n svg{width:16px;height:16px;flex:none}
.prod.chip-c h3 span{color:inherit}
.bento{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;margin-top:48px}
.bento .bcard{position:relative;overflow:hidden;display:flex;flex-direction:column;border-radius:26px;padding:38px 38px 34px;min-height:300px;text-decoration:none;color:var(--ink);background:linear-gradient(180deg,#f4f6ff 0%,#eceffc 100%);border:1px solid var(--line);transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s,border-color .3s,background .3s;scroll-margin-top:96px}
.bento .bcard:hover{transform:translateY(-5px);box-shadow:0 28px 64px rgba(40,55,110,.14);border-color:#d4ddfb}
.bento .bcard:has(.b3d.i1):hover{background:linear-gradient(180deg,#eef1ff 0%,#e1e8ff 100%);border-color:#b9c6ff}
.bento .bcard:has(.b3d.i2):hover{background:linear-gradient(180deg,#eaf2ff 0%,#dde9ff 100%);border-color:#b2caff}
.bento .bcard:has(.b3d.i3):hover{background:linear-gradient(180deg,#f0edff 0%,#e5e0ff 100%);border-color:#c3b8ff}
.bento .bcard:has(.b3d.i4):hover{background:linear-gradient(180deg,#e7f8fb 0%,#d6f0f6 100%);border-color:#a9e0ea}
.bento .bcard:has(.b3d.i5):hover{background:linear-gradient(180deg,#edefff 0%,#e1e6ff 100%);border-color:#bcc6ff}
.bento .bcard.wide{grid-column:span 3;min-height:344px}
.bento .bcard.third{grid-column:span 2}
.bento .bcard .chip{align-self:flex-start;margin-bottom:20px}
.bento .bcard h3{font-size:23px;font-weight:600;letter-spacing:-.01em;line-height:1.22;margin:0 0 16px;max-width:58%}
.bento .bcard p{font-size:14.5px;line-height:1.72;color:var(--txt-dim);max-width:58%;margin:0}
.bento .bcard.third h3{font-size:21px;max-width:74%}
.bento .bcard.third p{max-width:74%}
.bento .blink{margin-top:auto;padding-top:22px;display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:600;color:var(--blue)}
.bento .blink span{transition:transform .25s}
.bento .bcard:hover .blink span{transform:translateX(4px)}
.b3d{position:absolute;right:30px;bottom:28px;width:62px;height:62px;display:grid;place-items:center;background:none;box-shadow:none;border-radius:0;transform:none}
.b3d svg{width:62px;height:62px;transform:none;filter:none;stroke:#c3c9d8;transition:stroke .3s ease}
.bento .bcard.third .b3d{width:52px;height:52px;right:24px;bottom:24px}
.bento .bcard.third .b3d svg{width:52px;height:52px}
.bento .bcard:hover .b3d.i1 svg{stroke:#3a5bff}
.bento .bcard:hover .b3d.i2 svg{stroke:#2f6bff}
.bento .bcard:hover .b3d.i3 svg{stroke:#5a4be6}
.bento .bcard:hover .b3d.i4 svg{stroke:#16a3c4}
.bento .bcard:hover .b3d.i5 svg{stroke:#3f53e6}
@media(max-width:980px){
  .bento{grid-template-columns:1fr}
  .bento .bcard.wide,.bento .bcard.third{grid-column:auto;min-height:232px}
  .bento .bcard h3,.bento .bcard p,.bento .bcard.third h3,.bento .bcard.third p{max-width:66%}
}
@media(max-width:560px){
  .bento .bcard{padding:26px}
  .bento .bcard h3,.bento .bcard p,.bento .bcard.third h3,.bento .bcard.third p{max-width:100%}
  .b3d,.bento .bcard.third .b3d{position:relative;right:auto;bottom:auto;margin-top:18px;width:54px;height:54px}
}
/* Card Issuing — centered fanned-card layout (synced from style-2) */
.ci2{position:relative}
.ci2-head{max-width:680px;margin:0;text-align:left}
.ci2-head h3{font-size:clamp(24px,2.8vw,34px);font-weight:600;margin:14px 0 12px}
.ci2-head p{font-size:16px;color:var(--txt-dim);line-height:1.7;max-width:580px;margin:0}
.ci2-body{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px;margin-top:0}
.ci2-col{min-width:0}
.ci2-col.left{align-items:flex-end;text-align:right;justify-content:space-between;padding:30px 0;transform:translateX(-20px)}
.ci2-col.right{align-items:flex-start;text-align:left;justify-content:center;transform:translateX(20px)}
.ci2-feat{max-width:300px;display:flex;flex-direction:column;gap:11px}
.ci2-col.left .ci2-feat{align-items:flex-end}
.ci2-no{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-family:"Clash Grotesk";font-weight:600;font-size:13px;color:var(--blue);background:rgba(21,67,255,.09);border:1px solid rgba(21,67,255,.18)}
.ci2-feat p{font-size:14.5px;color:var(--txt-dim);line-height:1.6}
.ci2-fan{position:relative;width:500px;height:430px;margin:0 auto;display:flex;align-items:center;justify-content:center}
.ci2-deck{position:absolute;left:50%;top:50%;width:412px;aspect-ratio:1024/629;border-radius:22px}
.ci2-deck.d-back{background:#eef1fb;border:1px solid var(--line);transform:translate(-50%,-50%) rotate(-11deg) translateX(-32px);z-index:1;box-shadow:0 24px 52px rgba(10,15,36,.15)}
.ci2-deck.d-mid{background:linear-gradient(160deg,#9ff3df,#0CE8E8);transform:translate(-50%,-50%) rotate(8deg) translateX(34px);z-index:2;box-shadow:0 26px 58px rgba(12,232,232,.24)}
.ci2-cardimg{position:relative;z-index:3;width:444px;display:block;transform:rotate(-3deg);filter:drop-shadow(0 34px 64px rgba(10,15,36,.36));animation:ci2float 6s ease-in-out infinite}
@keyframes ci2float{50%{transform:rotate(-3deg) translateY(-10px)}}
@media(max-width:860px){
  .ci2-body{grid-template-columns:1fr;gap:8px}
  .ci2-col{min-height:0;flex-direction:row;flex-wrap:wrap;gap:24px;justify-content:center;align-items:flex-start;text-align:left;padding:0;transform:none}
  .ci2-col.left,.ci2-col.right{transform:none}
  .ci2-col.left{align-items:flex-start;text-align:left}
  .ci2-col.left .ci2-feat{align-items:flex-start}
  .ci2-feat{max-width:240px}
  .ci2-fan{order:-1;transform:scale(.92);margin-bottom:6px}
}
/* solutions — industry media cards */
.sol2-top{margin-bottom:28px}
.sol2-top .eyebrow{margin-bottom:14px}
.sol2-top h2{font-size:clamp(28px,3.4vw,44px);font-weight:600;line-height:1.08}
.ind-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ind-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;min-height:560px;padding:26px;border-radius:24px;overflow:hidden;text-decoration:none;isolation:isolate;color:#fff}
.ind-bg{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;background-size:cover;background-position:center;transform:scale(1);transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.ind-card:hover .ind-bg{transform:scale(1.06)}
.ind-ov{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(8,12,30,.16) 0%,rgba(8,12,30,.30) 42%,rgba(8,12,30,.74) 100%);transition:background .5s ease}
.ind-card:hover .ind-ov{background:linear-gradient(180deg,rgba(8,12,30,.30) 0%,rgba(8,12,30,.46) 42%,rgba(8,12,30,.82) 100%)}
.ind-num{position:relative;z-index:2;font-family:"Clash Grotesk";font-weight:600;font-size:42px;line-height:1;letter-spacing:-.02em;color:rgba(255,255,255,.92);text-shadow:0 4px 18px rgba(0,0,0,.35)}
.ind-bot{position:relative;z-index:2;width:100%;transition:transform .5s ease}
.ind-card:hover .ind-bot{transform:translateY(-4px)}
.ind-name{font-family:"Clash Grotesk","DM Sans",sans-serif;font-size:21px;font-weight:600;line-height:1.24;letter-spacing:-.01em;color:#fff;margin:0 0 8px}
.ind-desc{font-size:13.5px;line-height:1.55;color:rgba(255,255,255,.8);margin:0;max-height:0;opacity:0;overflow:hidden;transition:max-height .55s ease,opacity .45s ease,margin .55s ease}
.ind-card:hover .ind-desc{max-height:140px;opacity:1;margin:0 0 18px}
.ind-btn{display:inline-flex;align-items:center;gap:8px;margin-top:16px;background:#fff;color:#0a0f24;font-weight:600;font-size:13.5px;padding:10px 18px;border-radius:99px;position:relative;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}
.ind-card:hover .ind-btn{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.28)}
.ind-btn .arr{transition:transform .3s ease}
.ind-card:hover .ind-btn .arr{transform:translateX(3px)}
.ind-btn::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0%,rgba(0,0,0,.06) 50%,transparent 100%);transform:translateX(-100%);transition:transform .55s ease}
.ind-card:hover .ind-btn::before{transform:translateX(100%)}
@media(max-width:1100px){.ind-grid{grid-template-columns:repeat(2,1fr)}.ind-card{min-height:480px}}
@media(max-width:560px){.ind-grid{grid-template-columns:1fr}.ind-card{min-height:400px}.ind-desc{max-height:140px;opacity:1;margin:0 0 18px}}
@media(max-width:860px){.prod{grid-template-columns:1fr;gap:22px}.prod.rev .prod-text,.prod.rev .prod-vis{order:0}}

/* dual rail band */
.band{background:linear-gradient(180deg,var(--navy-2),var(--navy)); border-top:1px solid var(--line); border-bottom:1px solid var(--line)}
.rail-cols{display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:14px}
.rail-card{border-radius:var(--r); padding:32px; border:1px solid var(--line); position:relative; overflow:hidden}
.rail-card.fiat{background:linear-gradient(160deg,rgba(21,67,255,.16),rgba(21,67,255,.03))}
.rail-card.crypto{background:linear-gradient(160deg,rgba(12,232,232,.14),rgba(12,232,232,.02))}
.rail-card h3{font-size:23px; margin-bottom:8px}
.rail-card .k{font-size:13px; font-weight:600; letter-spacing:.05em; text-transform:uppercase; opacity:.7; margin-bottom:18px}
.rail-card.fiat .k{color:var(--blue)} .rail-card.crypto .k{color:#0a9aa0}

/* dualrail — animated Core Account flow diagram (Stripe-style) */
.dr-flow{margin-top:40px; padding:96px 44px; border:1px solid var(--line); border-radius:22px; background:linear-gradient(180deg,#fbfcff,#f3f5fc); position:relative; overflow:hidden}
.dr-flow::before{content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(21,67,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(21,67,255,.04) 1px,transparent 1px); background-size:30px 30px; -webkit-mask-image:radial-gradient(circle at 50% 40%,#000,transparent 78%); mask-image:radial-gradient(circle at 50% 40%,#000,transparent 78%); pointer-events:none}
.drf-title{position:relative; text-align:center; font-family:"Clash Grotesk"; font-weight:600; font-size:19px; color:var(--ink); margin-bottom:68px; letter-spacing:.01em}
.drf-title span{color:var(--blue)}
.drf-grid{position:relative; display:flex; align-items:center; justify-content:center; gap:16px}
.drf-side{display:flex; flex-direction:column; gap:12px; flex:none}
.drf-node{font-size:13px; font-weight:600; color:var(--blue); background:rgba(21,67,255,.07); border:1px solid rgba(21,67,255,.18); border-radius:10px; padding:10px 14px; white-space:nowrap; transition:transform .2s ease, box-shadow .2s ease}
.drf-node.c{color:#0a8b96; background:rgba(12,232,232,.10); border-color:rgba(12,232,232,.4)}
.drf-node:hover{transform:translateY(-2px); box-shadow:0 8px 22px rgba(21,67,255,.16)}
.drf-node.c:hover{box-shadow:0 8px 22px rgba(12,232,232,.24)}
.drf-link{flex:1; min-width:30px; height:2px; position:relative; background:repeating-linear-gradient(90deg,rgba(21,67,255,.55) 0 6px,transparent 6px 12px); background-size:24px 2px; animation:drflow 1s linear infinite}
@keyframes drflow{to{background-position:24px 0}}
.drf-dot{position:absolute; top:50%; left:0; width:7px; height:7px; margin-top:-3.5px; border-radius:50%; background:var(--blue); box-shadow:0 0 10px rgba(21,67,255,.8); animation:drdot 2.6s linear infinite}
@keyframes drdot{0%{left:0; opacity:0}12%{opacity:1}88%{opacity:1}100%{left:100%; opacity:0}}
.drf-dot.back{background:var(--blue); box-shadow:0 0 10px rgba(21,67,255,.8); animation:drdotback 2.6s linear infinite}
@keyframes drdotback{0%{left:100%; opacity:0}12%{opacity:1}88%{opacity:1}100%{left:0; opacity:0}}
.drf-link.c{background:repeating-linear-gradient(90deg,rgba(12,232,232,.6) 0 6px,transparent 6px 12px); background-size:24px 2px; animation:drflowr 1s linear infinite}
@keyframes drflowr{to{background-position:24px 0}}
.drf-dot.c{background:var(--cyan); box-shadow:0 0 10px rgba(12,232,232,.85); animation:drdotr 2.6s linear infinite}
@keyframes drdotr{0%{left:100%; opacity:0}12%{opacity:1}88%{opacity:1}100%{left:0; opacity:0}}
.drf-link::after{content:""; position:absolute; top:50%; right:-4px; transform:translateY(-50%); width:0; height:0; border-top:7px solid transparent; border-bottom:7px solid transparent; border-left:13px solid var(--blue); filter:drop-shadow(0 0 4px rgba(21,67,255,.55))}
.drf-link.bi{flex:none; width:90px; height:152px; background:none; animation:none}
.drf-link.bi::after, .drf-link.bi::before{display:none}
.drf-bisvg{width:100%; height:100%; overflow:visible; display:block}
.drf-bisvg .ln{fill:none; stroke:var(--blue); stroke-width:2; stroke-dasharray:6 6; animation:drdash 1s linear infinite}
@keyframes drdash{to{stroke-dashoffset:-12}}
.drf-bisvg .dt{fill:var(--blue); filter:drop-shadow(0 0 5px rgba(21,67,255,.85))}
.drf-bisvg.c .ln{stroke:var(--cyan)}
.drf-bisvg.c .dt{fill:var(--cyan); filter:drop-shadow(0 0 5px rgba(12,232,232,.85))}
.drf-link.c::after{right:auto; left:-4px; border-left:0; border-right:13px solid var(--cyan); filter:drop-shadow(0 0 4px rgba(12,232,232,.55))}
.drf-rail{display:flex; flex-direction:column; align-items:center; gap:20px; padding:0; border:none; background:none; flex:none}
.drf-rlab{font-family:"DM Mono",monospace; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--txt-dim)}
.drf-chip{font-size:14px; font-weight:600; color:#fff; background:linear-gradient(135deg,var(--blue),#3b6bff); border-radius:10px; padding:10px 16px; white-space:nowrap}
.drf-chip.c{background:linear-gradient(135deg,#0bb8c8,#0CE8E8); color:#053640}
.drf-swap{display:flex; align-items:center; gap:7px; font-family:"DM Mono",monospace; font-size:12px; font-weight:600; color:var(--blue)}
.drf-swap.c{color:#0a8b96}
.drf-vy{position:relative; width:2px; height:44px; background:repeating-linear-gradient(to bottom,var(--blue) 0 5px,transparent 5px 9px); flex:none; border-radius:1px}
.drf-vy::before{content:""; position:absolute; left:50%; top:-2px; transform:translateX(-50%); width:0; height:0; border-left:7px solid transparent; border-right:7px solid transparent; border-bottom:11px solid var(--blue); filter:drop-shadow(0 0 4px rgba(21,67,255,.55))}
.drf-vy::after{content:""; position:absolute; left:50%; bottom:-2px; transform:translateX(-50%); width:0; height:0; border-left:7px solid transparent; border-right:7px solid transparent; border-top:11px solid var(--blue); filter:drop-shadow(0 0 4px rgba(21,67,255,.55))}
.drf-swap.c .drf-vy{background:repeating-linear-gradient(to bottom,var(--cyan) 0 5px,transparent 5px 9px)}
.drf-swap.c .drf-vy::before{border-bottom-color:var(--cyan); filter:drop-shadow(0 0 4px rgba(12,232,232,.55))}
.drf-swap.c .drf-vy::after{border-top-color:var(--cyan); filter:drop-shadow(0 0 4px rgba(12,232,232,.55))}
.drf-core{flex:none; display:flex; flex-direction:column; align-items:center; gap:11px; position:relative; z-index:1}
.drf-logo{width:190px; height:190px; border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:7px; background:radial-gradient(circle at 50% 38%,#ffffff,#e9f0ff); border:1px solid rgba(21,67,255,.22); box-shadow:0 14px 40px rgba(21,67,255,.22), inset 0 1px 0 #fff; position:relative}
.drf-logo::before{content:""; position:absolute; inset:-11px; border-radius:50%; border:2px solid rgba(21,67,255,.42); animation:drpulse 2.2s ease-out infinite}
.drf-logo::after{content:""; position:absolute; inset:-11px; border-radius:50%; border:2px solid rgba(12,232,232,.4); animation:drpulse 2.2s ease-out infinite 1.1s}
.drf-logo img{width:118px; height:auto; max-width:118px; display:block; position:relative; z-index:1; margin-bottom:3px}
@keyframes drpulse{0%{transform:scale(1); opacity:.7}100%{transform:scale(1.28); opacity:0}}
.drf-core-sub{font-size:11.5px; color:var(--txt-dim); text-align:center}
@media(max-width:980px){
  .drf-grid{flex-direction:column; gap:6px}
  .drf-side{flex-direction:row; flex-wrap:wrap; justify-content:center}
  .drf-link{flex:none; width:2px; height:26px; min-width:0; background:repeating-linear-gradient(180deg,rgba(21,67,255,.55) 0 6px,transparent 6px 12px); background-size:2px 24px; animation:drflowv 1s linear infinite}
  .drf-link.c{background:repeating-linear-gradient(180deg,rgba(12,232,232,.6) 0 6px,transparent 6px 12px); background-size:2px 24px}
  .drf-link::after, .drf-link.bi::before{display:none}
  .drf-link.bi{width:2px; height:26px; background:repeating-linear-gradient(180deg,rgba(21,67,255,.55) 0 6px,transparent 6px 12px); background-size:2px 24px}
  .drf-link.c.bi{background:repeating-linear-gradient(180deg,rgba(12,232,232,.6) 0 6px,transparent 6px 12px); background-size:2px 24px}
  .drf-link.bi .drf-bisvg{display:none}
  .drf-dot{display:none}
  .drf-rail{flex-direction:row; gap:14px}
}
@keyframes drflowv{to{background-position:0 -24px}}
/* stablecoin steps */
.steps{display:grid; grid-template-columns:repeat(3,1fr); gap:18px}
.step{border:1px solid var(--line); border-radius:var(--r); padding:28px; background:var(--navy-2); position:relative}
.step .no{font-family:"Clash Grotesk"; font-size:42px; font-weight:600; color:transparent; -webkit-text-stroke:1px rgba(120,150,255,.4); margin-bottom:8px}
.step h4{font-size:19px; margin-bottom:8px}
.step p{font-size:14.5px; color:var(--txt-dim)}

/* Collect · Convert · Pay Out — chamfered staggered stat cards */
#stablecoin{background:var(--navy-2); position:relative; overflow:hidden; min-height:100vh; display:flex; flex-direction:column; justify-content:center}
#stablecoin .wrap{width:100%}
.cc-top{display:flex; flex-direction:column; gap:26px; align-items:flex-start; justify-content:space-between}
@media(min-width:980px){.cc-top{flex-direction:row; gap:80px}}
.cc-head{flex:none}
.cc-head .eyebrow{margin-bottom:16px}
.cc-head h2{font-size:clamp(34px,4.6vw,54px); font-weight:600; letter-spacing:-.02em; line-height:.98; color:var(--txt)}
.cc-desc{max-width:560px}
.cc-desc p{font-size:18px; line-height:1.55; color:var(--txt-dim)}
.cc-grid{margin-top:56px; display:grid; grid-template-columns:1fr; gap:20px}
@media(min-width:680px){.cc-grid{grid-template-columns:1fr 1fr}}
@media(min-width:980px){.cc-grid{grid-template-columns:repeat(3,1fr)}}
.cc-card{position:relative; width:100%; height:340px; background:rgba(255,255,255,.85); padding:1.5px}
@media(min-width:980px){.cc-card.off{margin-top:96px}}
.cc-card .inner{position:relative; width:100%; height:100%; overflow:hidden; background-size:cover; background-position:center}
.cc-c1,.cc-c1 .inner{clip-path:polygon(64px 0, calc(100% - 14px) 0, calc(100% - 4px) 4px, 100% 14px, 100% calc(100% - 14px), calc(100% - 4px) calc(100% - 4px), calc(100% - 14px) 100%, 14px 100%, 4px calc(100% - 4px), 0 calc(100% - 14px), 0 64px)}
.cc-c2,.cc-c2 .inner{clip-path:polygon(0 14px, 4px 4px, 14px 0, calc(100% - 64px) 0, 100% 64px, 100% calc(100% - 14px), calc(100% - 4px) calc(100% - 4px), calc(100% - 14px) 100%, 64px 100%, 0 calc(100% - 64px))}
.cc-c3,.cc-c3 .inner{clip-path:polygon(0 14px, 4px 4px, 14px 0, calc(100% - 64px) 0, 100% 64px, 100% calc(100% - 64px), calc(100% - 64px) 100%, 14px 100%, 4px calc(100% - 4px), 0 calc(100% - 14px))}
.cc-c1 .inner{background-image:url('https://cdn.prod.website-files.com/6a30c4df9454938a5b7c8745/6a3fe635945a16f567f44d99_bene-collect.png')}
.cc-c2 .inner{background-image:url('https://cdn.prod.website-files.com/6a30c4df9454938a5b7c8745/6a3fe636c730bbb9f413767c_bene-fx.png')}
.cc-c3 .inner{background-image:url('https://cdn.prod.website-files.com/6a30c4df9454938a5b7c8745/6a3fe6351924d676af3ff1f4_bene-payout.png')}
.cc-card .inner::after{content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,rgba(0,0,0,.45) 0%,rgba(0,0,0,.08) 36%,rgba(0,0,0,.1) 55%,rgba(0,0,0,.72) 100%)}
.cc-ph{display:none}
.cc-no{position:absolute; top:22px; left:24px; z-index:2; font-family:"Clash Grotesk"; font-size:13px; font-weight:600; letter-spacing:.14em; color:rgba(255,255,255,.6)}
.cc-c1 .cc-no{left:auto; right:24px}
.cc-ov{position:absolute; z-index:2}
.cc-ov.p1{left:24px; right:24px; bottom:24px}
.cc-ov.p2{left:24px; right:24px; bottom:78px}
.cc-ov.p3{left:24px; right:84px; bottom:24px}
.cc-val{display:block; font-family:"Clash Grotesk","DM Sans",sans-serif; font-weight:600; line-height:1.04; font-size:clamp(22px,2.6vw,30px); letter-spacing:-.01em; background:linear-gradient(294deg,#3b6bff 16%,#0CE8E8); -webkit-background-clip:text; background-clip:text; color:transparent}
.cc-txt{margin-top:12px; font-size:13.5px; line-height:1.5; color:rgba(255,255,255,.9)}
.cc-fade{pointer-events:none; position:absolute; inset-inline:0; bottom:0; height:110px; z-index:5; background:linear-gradient(to bottom,rgba(244,246,253,0),rgba(244,246,253,.55) 70%,var(--navy-2) 100%)}
@media(max-width:980px){#stablecoin{min-height:auto}.cc-card{height:300px}}

/* compliance */
.badges{display:flex; flex-wrap:wrap; gap:12px; margin-top:26px}
#security .badges{justify-content:flex-start; margin-top:24px}
.badge{display:flex; align-items:center; gap:9px; padding:11px 18px; border-radius:12px; border:1px solid var(--line); background:var(--navy-2); font-size:14px; font-weight:500}
.badge svg{width:18px;height:18px;color:var(--blue)}
.split{display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:30px}
.split .col{border:1px solid var(--line); border-radius:var(--r); padding:26px}
.split .col h4{font-size:18px; display:flex; align-items:center; gap:10px; margin-bottom:10px}
.split .col p{font-size:14.5px; color:var(--txt-dim)}
.dotc{width:10px;height:10px;border-radius:50%}
/* Security & Compliance — 居中三栏：法币文案 · 对比图形 · 加密文案 */
.scmp-row{display:grid; grid-template-columns:1fr auto 1fr; gap:clamp(20px,3vw,46px); align-items:center; max-width:1120px; margin:42px auto 0}
.scmp-row .col{border:1px solid var(--line); border-radius:var(--r); padding:26px; animation:coinfloat 5.5s ease-in-out infinite; will-change:transform}
.scmp-row .col:last-child{animation-delay:-2.2s}
@media (prefers-reduced-motion: reduce){.scmp-row .col{animation:none}}
.scmp-row .col h4{font-size:18px; display:flex; align-items:center; gap:10px; margin-bottom:10px}
.scmp-row .col p{font-size:14.5px; color:var(--txt-dim)}
#security .badges{justify-content:center; margin-top:64px}
.scmp-vis{position:relative; width:clamp(300px,34vw,520px)}
/* designed two-coin comparison — 法币 vs 加密 */
.coin-cmp{position:relative; container-type:inline-size; display:flex; align-items:center; justify-content:center; gap:clamp(16px,7cqi,40px); width:100%; margin-inline:auto; padding:10px 0}
.cr-glow{position:absolute; inset:-6% 4%; border-radius:50%; background:radial-gradient(closest-side, rgba(21,67,255,.16), rgba(21,67,255,0) 78%); filter:blur(8px); pointer-events:none}
.cc-coin{position:relative; z-index:1; width:clamp(128px,46cqi,224px); aspect-ratio:1/1}
.cc-coin img{display:block; width:100%; height:auto;
  filter:drop-shadow(0 18px 26px rgba(21,67,255,.34));
  animation:coinfloat 5.5s ease-in-out infinite; will-change:transform}
.cc-coin:last-of-type img{animation-delay:-2.2s;
  filter:drop-shadow(0 18px 26px rgba(214,158,20,.36))}
@keyframes coinfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@media (prefers-reduced-motion: reduce){.cc-coin .disc{animation:none}}
@media(max-width:860px){.scmp-row{grid-template-columns:1fr; gap:18px; max-width:440px} .scmp-vis{order:-1; width:100%; max-width:360px; margin-inline:auto}}

/* page bottom — Adyen-inspired footer with particle dome (style-2) */
footer.site-foot{position:relative;overflow:hidden;background:#000521;color:#EDEFF7;padding:62px 0 30px}
.foot-dome{position:absolute;left:0;right:0;bottom:0;width:100%;height:100%;z-index:0;pointer-events:none}
.site-foot .wrap{position:relative;z-index:2}
.foot-head{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:20px;flex-wrap:wrap}
.foot-head .logo{color:#fff}
.foot-contact{display:inline-flex;align-items:center;gap:8px;padding:12px 26px;border-radius:99px;font-weight:600;font-size:15px;color:#021024;background:linear-gradient(100deg,#1543FF,#0CE8E8);transition:.2s}
.foot-contact:hover{filter:brightness(1.08);transform:translateY(-1px)}
.foot-cols{display:flex;justify-content:space-between;gap:36px;padding:46px 0 56px}
.foot-cols .fcol:not(.foot-brand){text-align:left}
.foot-cols .fcol:not(.foot-brand) a{display:inline-block;margin:0 24px 0 0}
.foot-cols .fcol:not(.foot-brand) a:last-child{margin-right:0}
.foot-brand p{font-size:14px;color:#9aa6c8;max-width:320px;margin:16px 0 0}
.foot-brand .infra{display:flex;align-items:center;gap:10px;font-size:14px;color:#9aa6c8;margin-top:16px}
.foot-menu{display:flex;flex-wrap:wrap;gap:28px;margin-top:22px;padding:0;height:auto;border:0;border-radius:0}
.foot-menu a{display:inline-block;margin:0;font-size:14.5px;color:#cdd4e8;transition:.2s}
.foot-menu a:hover{color:#0CE8E8}
.fcol h5{font-size:12px;font-weight:600;margin-bottom:18px;color:#7e89ad;letter-spacing:.08em;text-transform:uppercase}
.fcol a{display:block;font-size:14.5px;color:#cdd4e8;margin-bottom:12px;transition:.2s}
.fcol a:hover{color:#0CE8E8}
.foot-news .news-btn{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:99px;font-size:14px;font-weight:600;color:#fff;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.05);transition:.2s}
.foot-news .news-btn:hover{border-color:#0CE8E8;color:#0CE8E8}
.foot-bot{display:flex;justify-content:space-between;text-align:left;align-items:center;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);font-size:13px;color:#7e89ad;flex-wrap:wrap;gap:14px}
.foot-tagline{text-align:right}
.foot-legal{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.foot-legal a{color:#7e89ad;transition:.2s}.foot-legal a:hover{color:#cdd4e8}
.foot-right{display:flex;align-items:center;gap:16px}
.socials{display:flex;gap:10px}
.socials a{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#cdd4e8;transition:.2s}
.socials a:hover{background:rgba(21,67,255,.25);color:#fff}
.socials svg{width:16px;height:16px}
.foot-locale{display:inline-flex;align-items:center;gap:8px;padding:8px 15px;border:1px solid rgba(255,255,255,.16);border-radius:99px;color:#cdd4e8}
@media(max-width:860px){.foot-cols{gap:30px}}
@media(max-width:560px){.foot-cols{flex-direction:column}.foot-cols .fcol:not(.foot-brand){text-align:left}}

/* reveal */
.reveal{opacity:0; transform:translateY(26px); transition:.7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1; transform:none}
/* 全站文字加载动效（逐行级联：淡入 + 上移 + 模糊清晰化） */
.txa{opacity:0; transform:translateY(12px); filter:blur(8px); transition:opacity .72s cubic-bezier(.2,.7,.2,1), transform .72s cubic-bezier(.2,.7,.2,1), filter .72s cubic-bezier(.2,.7,.2,1); transition-delay:var(--txa-d,0ms); will-change:opacity,transform,filter}
.txa.in{opacity:1; transform:none; filter:none}
@media (prefers-reduced-motion: reduce){.txa{transition:none; opacity:1; transform:none; filter:none}}

@keyframes spin{to{transform:rotate(360deg)}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes pulse{0%,100%{opacity:.5}50%{opacity:1}}

@media(max-width:980px){
  .hero-inner{grid-template-columns:1fr; gap:36px} .engine{max-width:380px; margin:0 auto}
  .nav-links,.nav-right .lang,.nav-right .login{display:none} .burger{display:flex}
  .split,.rail-cols{grid-template-columns:1fr}
  .span-6,.span-4,.span-8{grid-column:span 12} .steps{grid-template-columns:1fr}
}
.dd-ic:empty,.ic:empty,.fl:empty,.pv-flag:empty,.emo:empty,.of-ic:empty,.cc-ph:empty{display:none!important}
/* #payout — full-height image background (matches Stablecoin Rail) with contrast overlay */
#payout{position:relative; overflow:hidden; min-height:100vh; display:flex; flex-direction:column; justify-content:center; background:#0a1230 url("https://cdn.prod.website-files.com/6a30c4df9454938a5b7c8745/6a3fe635c730bbb9f413761c_payout-bg.png") center/cover no-repeat; border-top:1px solid var(--line); border-bottom:1px solid var(--line)}
#payout::before{content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(6,12,32,.30),rgba(6,12,32,.48)); pointer-events:none}
#payout .wrap{width:100%; position:relative; z-index:1}
#payout .prod-text h3{color:#fff; text-shadow:0 1px 14px rgba(0,0,0,.4)}
#payout .prod-text p{color:rgba(255,255,255,.92); text-shadow:0 1px 10px rgba(0,0,0,.35)}
#payout .bullets li{color:rgba(255,255,255,.9)}
#payout .prod-text b{color:#fff}
#payout .prod-text .n{color:#9fb4ff}
@media(max-width:980px){#payout{min-height:auto}}
/* CTA — brand-blue banner card */
.cta-hero{position:relative;min-height:100vh;display:flex;flex-direction:column;overflow:hidden;color:#000;background:#fff;isolation:isolate}
.cta-inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-height:100vh;padding:120px 24px 80px}
.cta-card{position:relative;width:100%;max-width:1120px;margin:0 auto;overflow:hidden;display:flex;align-items:center;min-height:380px;text-align:left;color:#fff;border-radius:32px;background:linear-gradient(120deg,var(--blue) 0%,#3b6bff 100%);box-shadow:0 40px 90px rgba(21,67,255,.28);padding:clamp(40px,6vw,80px) clamp(28px,5vw,72px)}
.cta-card::before{content:"";position:absolute;inset:0;z-index:0;background-image:linear-gradient(rgba(255,255,255,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.10) 1px,transparent 1px);background-size:46px 46px;-webkit-mask-image:radial-gradient(130% 130% at 0% 0%,#000,transparent 55%);mask-image:radial-gradient(130% 130% at 0% 0%,#000,transparent 55%);pointer-events:none}
.cta-dots{position:absolute;top:26px;right:30px;z-index:3;display:flex;gap:8px}
.cta-dots i{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.5)}
.cta-deco{position:absolute;right:0;top:0;bottom:0;width:56%;z-index:1;pointer-events:none;display:flex;align-items:center;justify-content:flex-end;padding-right:clamp(28px,5vw,64px)}
.cta-deco svg{width:min(460px,84%);height:auto}
.cta-deco svg [data-draw]{fill:url(#ctaFill);stroke:rgba(255,255,255,.92);stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1}
.cta-deco svg .lk-cyan{stroke:var(--cyan)}
.cta-hero.in .cta-deco svg [data-draw]{animation:ctaLoop 5s ease-in-out infinite;animation-delay:var(--dl,0s)}
@keyframes ctaDraw{to{stroke-dashoffset:0}}
@keyframes ctaLoop{0%{stroke-dashoffset:1}40%{stroke-dashoffset:0}62%{stroke-dashoffset:0}100%{stroke-dashoffset:-1}}
@media (prefers-reduced-motion: reduce){.cta-deco svg [data-draw]{stroke-dashoffset:0;animation:none}}
.cta-hero .cta-up{opacity:0;transform:translateY(32px);transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1);transition-delay:var(--d,0s)}
.cta-hero.in .cta-up{opacity:1;transform:none}
.cta-orig{position:relative;z-index:3;max-width:520px;text-align:left}
.cta-otitle{margin:0 0 24px;font-family:"Clash Grotesk","DM Sans",sans-serif;font-size:clamp(28px,3.4vw,46px);font-weight:600;line-height:1.1;letter-spacing:-.02em;color:#fff;text-transform:none}
.cta-osub{margin:0 0 30px;max-width:440px;font-size:clamp(14px,1.3vw,17px);font-weight:500;line-height:1.6;color:rgba(255,255,255,.85);letter-spacing:0;text-transform:none}
.cta-obtns{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.cta-btn-w{background:#fff;color:var(--blue);border-radius:999px}
.cta-btn-w:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.18)}
.cta-btn-w:hover .arr{transform:translateX(4px)}
.cta-btn-w .arr{transition:transform .25s ease}
.cta-btn-t{display:inline-flex;align-items:center;font-family:"DM Sans";font-weight:600;font-size:15px;color:#fff;text-decoration:none;padding:14px 26px;border:1.5px solid rgba(255,255,255,.55);border-radius:999px;transition:background .2s ease,border-color .2s ease}
.cta-btn-t:hover{background:rgba(255,255,255,.14);border-color:#fff;text-decoration:none}
@media(max-width:760px){
  .cta-inner{padding:110px 16px 64px}
  .cta-card{min-height:320px;padding:36px 26px}
  .cta-deco{display:none}
}
@media (prefers-reduced-motion: reduce){
  .cta-hero .cta-up{opacity:1!important;transform:none!important;transition:none!important}
}
/* === bravo-style sticky stacking sections (only 01-05 product blocks) === */
.hero{position:relative; z-index:0}
#collection,#payout,#fx{position:sticky; top:0; min-height:100vh; display:flex; flex-direction:column; justify-content:center; box-shadow:0 -24px 60px rgba(10,15,36,.16); border-radius:40px 40px 0 0}
/* 04 不再吸顶折叠：进入时作为卡片覆盖 03，结尾正常滚动衔接下一屏 */
#issuing{position:relative; z-index:1; min-height:100vh; display:flex; flex-direction:column; justify-content:center; box-shadow:0 -24px 40px -20px rgba(10,15,36,.16); border-radius:40px 40px 0 0}
#collection>.wrap,#payout>.wrap,#fx>.wrap,#issuing>.wrap,#ad-partner>.wrap{width:100%}
#products,#issuing,#ad-partner,#dualrail,#solutions,#security,#cta{background:var(--navy)}
#products{background:#fff}
#collection{box-shadow:none; border-top:none; border-radius:40px 40px 0 0}
footer.site-foot{position:relative; z-index:3; box-shadow:0 -30px 70px rgba(10,15,36,.3)}
@media(max-width:980px){#collection,#payout,#fx,#issuing,#ad-partner{position:static; min-height:auto; display:block; box-shadow:none}}