*{margin:0;padding:0;box-sizing:border-box;}

html{
scroll-padding-top:90px;
}

body{
background:#0B0F1A;
color:#E5E7EB;
font-family:Arial;
}

body.nav-open{
overflow:hidden;
}

.page [id]{
scroll-margin-top:90px;
}

.page{
min-height:100vh;
}

.container{
width:1200px;
max-width:92%;
margin:auto;
}

/* header */
.header{
position:fixed;
width:100%;
top:0;
z-index:100;
background:rgba(0,0,0,0.3);
backdrop-filter:blur(10px);
transition:background .25s ease;
}

.header.is-scrolled{
background:rgba(0,0,0,0.78);
}

.header-inner{
display:flex;
justify-content:space-between;
align-items:center;
height:70px;
gap:14px;
}

.logo{
font-weight:700;
letter-spacing:0.6px;
display:flex;
align-items:center;
text-decoration:none;
color:#E5E7EB;
}

.logo img{
display:block;
height:40px;
width:auto;
}

.nav{
display:flex;
align-items:center;
flex:1;
justify-content:center;
}

.nav-list{
display:flex;
align-items:center;
margin:0;
padding:0;
list-style:none;
}

.nav a{
margin:0 6px;
padding:10px 12px;
border-radius:12px;
color:#aaa;
text-decoration:none;
transition:.3s;
position:relative;
}

.nav a:hover,
.nav a:focus-visible{
color:#E5E7EB;
background:rgba(255,255,255,0.04);
}

.nav a.active{
color:#E5E7EB;
background:rgba(201,169,110,0.10);
border:1px solid rgba(255,215,0,0.12);
}

.nav a.active::after{
content:"";
position:absolute;
left:12px;
right:12px;
bottom:6px;
height:2px;
border-radius:2px;
background:linear-gradient(90deg,#C9A96E,#FFD700);
opacity:0.9;
}

.nav-mobile-header{
display:none;
align-items:center;
justify-content:space-between;
padding:10px 16px 14px;
margin:0 6px 6px;
border-bottom:1px solid rgba(255,255,255,0.07);
}

.nav-mobile-logo{
font-weight:800;
letter-spacing:0.8px;
display:flex;
align-items:center;
text-decoration:none;
color:#E5E7EB;
}

.nav-mobile-logo img{
display:block;
height:36px;
width:auto;
}

.nav-close{
width:40px;
height:40px;
border-radius:14px;
border:1px solid rgba(255,255,255,0.10);
background:rgba(255,255,255,0.04);
color:#E5E7EB;
font-size:26px;
line-height:1;
cursor:pointer;
}

.nav-cta{
display:none;
gap:10px;
padding:18px 16px 0;
}

.menu-toggle{
display:none;
font-size:26px;
cursor:pointer;
background:transparent;
border:0;
color:#E5E7EB;
width:44px;
height:44px;
border-radius:14px;
border:1px solid rgba(255,255,255,0.10);
background:rgba(255,255,255,0.04);
}

.header-cta{
display:flex;
gap:10px;
align-items:center;
}

.lang-switch{
display:flex;
align-items:center;
gap:8px;
margin-left:12px;
position:relative;
margin-right:10px;
}

.lang-select{
height:44px;
border-radius:14px;
border:1px solid rgba(255,255,255,0.12);
background:linear-gradient(180deg, rgba(255,255,255,0.07), rgba(255,255,255,0.03));
color:#E5E7EB;
padding:0 42px 0 42px;
font-size:13px;
letter-spacing:0.2px;
outline:none;
appearance:none;
-webkit-appearance:none;
cursor:pointer;
box-shadow:0 14px 34px rgba(0,0,0,0.45);
min-width:158px;
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}

.lang-select option{
background:#0B0F1A;
color:#E5E7EB;
}

.lang-select optgroup{
background:#0B0F1A;
color:#E5E7EB;
}

.lang-switch::before{
content:"";
position:absolute;
left:12px;
top:50%;
width:18px;
height:18px;
transform:translateY(-50%);
border-radius:50%;
border:1px solid rgba(255,255,255,0.22);
background:
radial-gradient(12px 12px at 40% 35%, rgba(93,212,255,0.25), rgba(93,212,255,0) 60%),
radial-gradient(14px 14px at 70% 70%, rgba(255,215,0,0.22), rgba(255,215,0,0) 62%);
pointer-events:none;
}

.lang-switch::after{
content:"";
position:absolute;
right:16px;
top:50%;
width:7px;
height:7px;
transform:translateY(-60%) rotate(45deg);
border-right:2px solid rgba(229,231,235,0.75);
border-bottom:2px solid rgba(229,231,235,0.75);
pointer-events:none;
}

.lang-select:hover{
border-color:rgba(255,255,255,0.20);
background:linear-gradient(180deg, rgba(255,255,255,0.09), rgba(255,255,255,0.04));
}

.lang-select:focus-visible{
outline:2px solid rgba(255,215,0,0.55);
outline-offset:3px;
}

.footer{
padding:34px 0 46px;
border-top:1px solid rgba(255,255,255,0.06);
background:linear-gradient(180deg, rgba(11,15,26,0.00), rgba(11,15,26,0.72));
}

.footer-inner{
display:flex;
align-items:center;
justify-content:space-between;
gap:16px;
flex-wrap:wrap;
}

.footer-meta{
display:flex;
align-items:center;
gap:14px;
flex-wrap:wrap;
color:#AAB0BA;
font-size:14px;
}

.footer-meta a{
color:#E5E7EB;
text-decoration:none;
padding:8px 10px;
border-radius:12px;
border:1px solid rgba(255,255,255,0.08);
background:rgba(255,255,255,0.03);
}

/* 按钮 */
.btn{
padding:12px 24px;
border-radius:10px;
text-decoration:none;
display:inline-block;
line-height:1;
user-select:none;
white-space:nowrap;
}

.btn-primary{
background:linear-gradient(135deg,#C9A96E,#FFD700);
color:#000;
box-shadow:0 0 15px rgba(255,215,0,0.5);
}

.btn-primary:hover{
transform:translateY(-2px);
}

.btn-outline{
border:1px solid #555;
color:#ccc;
}

.btn-outline:hover{
border-color:#777;
color:#E5E7EB;
}

.btn:focus-visible{
outline:2px solid rgba(255,215,0,0.6);
outline-offset:3px;
}

/* hero */
.hero{
padding:120px 0;
}

.hero-inner{
display:flex;
align-items:center;
justify-content:space-between;
gap:30px;
}

.hero-left{
flex:1 1 520px;
max-width:560px;
}

.hero-right{
flex:1 1 640px;
display:flex;
justify-content:flex-end;
}

.hero-left h1{
font-size:42px;
margin-bottom:20px;
letter-spacing:0.2px;
}

.hero-title{
margin-bottom:14px;
}

.hero-brand{
display:block;
font-size:15px;
font-weight:800;
letter-spacing:0.6px;
color:#C9A96E;
margin-bottom:10px;
}

.hero-title-text{
display:block;
}

.hero-left p{
color:#aaa;
margin-bottom:20px;
}

.hero-brandline{
color:#AAB0BA;
margin-bottom:14px;
font-size:14px;
line-height:1.7;
}

.hero-buttons{
display:flex;
gap:12px;
flex-wrap:wrap;
}

.hero-media{
width:clamp(420px, 52vw, 760px);
max-width:100%;
aspect-ratio:1912 / 956;
position:relative;
border-radius:18px;
overflow:hidden;
background:
radial-gradient(900px 420px at 12% 18%, rgba(255,215,0,0.10), rgba(255,215,0,0) 60%),
radial-gradient(900px 420px at 88% 78%, rgba(93,212,255,0.10), rgba(93,212,255,0) 62%),
rgba(255,255,255,0.03);
box-shadow:
0 28px 80px rgba(0,0,0,0.55),
0 0 0 1px rgba(255,255,255,0.08) inset;
transform:perspective(1200px) rotateY(-10deg) rotateX(2deg) translateY(-6px);
transform-origin:right center;
will-change:transform;
padding-top:44px;
}

.hero-window-bar{
position:absolute;
left:0;
right:0;
top:0;
height:44px;
display:flex;
align-items:center;
gap:10px;
padding:0 14px;
background:rgba(11,15,26,0.82);
backdrop-filter:blur(10px);
border-bottom:1px solid rgba(255,255,255,0.10);
z-index:2;
}

.hero-window-bar::after{
content:"";
position:absolute;
left:0;
right:0;
bottom:0;
height:1px;
background:linear-gradient(90deg, rgba(255,215,0,0.00), rgba(255,215,0,0.28), rgba(93,212,255,0.26), rgba(255,215,0,0.00));
opacity:0.9;
pointer-events:none;
}

.hero-dot{
width:10px;
height:10px;
border-radius:999px;
box-shadow:0 6px 14px rgba(0,0,0,0.35);
flex:0 0 auto;
}

.hero-dot-red{ background:#FF5F57; }
.hero-dot-yellow{ background:#FFBD2E; }
.hero-dot-green{ background:#28C840; }

.hero-window-title{
margin-left:auto;
margin-right:auto;
max-width:420px;
height:28px;
display:flex;
align-items:center;
padding:0 12px;
border-radius:999px;
background:rgba(255,255,255,0.04);
border:1px solid rgba(255,255,255,0.10);
box-shadow:
0 10px 24px rgba(0,0,0,0.30),
0 0 0 1px rgba(0,0,0,0.18) inset;
font-size:12px;
letter-spacing:0.4px;
color:rgba(229,231,235,0.78);
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}

.hero-window-title::before{
content:"https://";
color:rgba(170,176,186,0.72);
}

.hero-media::before{
content:"";
position:absolute;
inset:-1px;
border-radius:18px;
padding:1px;
background:linear-gradient(135deg, rgba(201,169,110,0.55), rgba(93,212,255,0.35), rgba(255,215,0,0.25));
pointer-events:none;
-webkit-mask:
linear-gradient(#000 0 0) content-box,
linear-gradient(#000 0 0);
-webkit-mask-composite:xor;
mask-composite:exclude;
opacity:0.75;
z-index:3;
}

.hero-media::after{
content:"";
position:absolute;
inset:-22px;
background:
radial-gradient(520px 280px at 22% 30%, rgba(255,215,0,0.16), rgba(255,215,0,0) 62%),
radial-gradient(520px 280px at 78% 70%, rgba(93,212,255,0.14), rgba(93,212,255,0) 62%);
filter:blur(22px);
opacity:0.9;
pointer-events:none;
z-index:-1;
}

.hero-media:hover{
transform:perspective(1200px) rotateY(-6deg) rotateX(1deg) translateY(-10px);
box-shadow:
0 34px 100px rgba(0,0,0,0.62),
0 0 0 1px rgba(255,255,255,0.10) inset;
}

.hero-media img{
position:absolute;
left:0;
right:0;
bottom:0;
top:44px;
width:100%;
height:auto;
min-height:calc(100% - 44px);
object-fit:cover;
object-position:top left;
display:block;
transform:translate3d(0,0,0) scale(1.01);
backface-visibility:hidden;
image-rendering:-webkit-optimize-contrast;
z-index:1;
}

/* features */
.features{
padding:80px 0;
}

.section-title{
text-align:center;
margin-bottom:40px;
}

.feature-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
}

.feature-card{
padding:25px;
background:rgba(255,255,255,0.03);
border-radius:14px;
text-align:center;
transition:.3s;
border:1px solid rgba(255,255,255,0.05);
}

.feature-card:hover{
transform:translateY(-5px);
box-shadow:0 0 20px rgba(255,215,0,0.2);
}

.feature-card.will-reveal{
opacity:0;
transform:translateY(10px);
}

.feature-card.will-reveal.is-visible{
opacity:1;
transform:translateY(0);
}

.feature-title{
font-weight:700;
margin:0 0 8px;
color:#E5E7EB;
}

.feature-desc{
color:#AAB0BA;
line-height:1.6;
font-size:14px;
margin:0;
}

/* product */
.product{
padding:80px 0;
position:relative;
overflow:hidden;
background:
radial-gradient(880px 420px at 12% 10%, rgba(255,215,0,0.08), rgba(255,215,0,0) 62%),
radial-gradient(880px 420px at 88% 80%, rgba(93,212,255,0.07), rgba(93,212,255,0) 62%),
linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0));
}

.product-inner{
display:flex;
align-items:center;
justify-content:space-between;
gap:30px;
}

.product-text h2{
font-size:32px;
margin-bottom:10px;
letter-spacing:0.4px;
}

.product-text p{
color:#AAB0BA;
}

.product-image{
display:flex;
justify-content:flex-end;
flex:1 1 640px;
}

.product-stack{
position:relative;
width:clamp(460px, 54vw, 820px);
max-width:100%;
aspect-ratio:1912 / 956;
}

.product-card{
position:absolute;
inset:0;
border-radius:18px;
overflow:hidden;
background:rgba(255,255,255,0.03);
box-shadow:
0 28px 80px rgba(0,0,0,0.55),
0 0 0 1px rgba(255,255,255,0.08) inset;
transform-origin:center center;
will-change:transform;
padding-top:44px;
transition:transform .65s ease, opacity .65s ease, filter .65s ease;
}

.product-card::before{
content:"";
position:absolute;
inset:-1px;
border-radius:18px;
padding:1px;
background:linear-gradient(135deg, rgba(93,212,255,0.38), rgba(201,169,110,0.42), rgba(255,215,0,0.18));
pointer-events:none;
-webkit-mask:
linear-gradient(#000 0 0) content-box,
linear-gradient(#000 0 0);
-webkit-mask-composite:xor;
mask-composite:exclude;
opacity:0.72;
z-index:4;
}

.product-card::after{
content:"";
position:absolute;
inset:-22px;
background:
radial-gradient(520px 280px at 18% 30%, rgba(93,212,255,0.14), rgba(93,212,255,0) 62%),
radial-gradient(520px 280px at 82% 75%, rgba(255,215,0,0.12), rgba(255,215,0,0) 62%);
filter:blur(22px);
opacity:0.9;
pointer-events:none;
z-index:-1;
}

.product-card:hover{
transform:translate3d(0,-10px,0) scale(1.01);
box-shadow:
0 34px 100px rgba(0,0,0,0.62),
0 0 0 1px rgba(255,255,255,0.10) inset;
}

.product-window-bar{
position:absolute;
left:0;
right:0;
top:0;
height:44px;
display:flex;
align-items:center;
gap:10px;
padding:0 14px;
background:rgba(11,15,26,0.82);
backdrop-filter:blur(10px);
border-bottom:1px solid rgba(255,255,255,0.10);
z-index:3;
}

.product-window-bar::after{
content:"";
position:absolute;
left:0;
right:0;
bottom:0;
height:1px;
background:linear-gradient(90deg, rgba(93,212,255,0.00), rgba(93,212,255,0.26), rgba(255,215,0,0.24), rgba(93,212,255,0.00));
opacity:0.9;
pointer-events:none;
}

.product-dot{
width:10px;
height:10px;
border-radius:999px;
box-shadow:0 6px 14px rgba(0,0,0,0.35);
flex:0 0 auto;
}

.product-dot-red{ background:#FF5F57; }
.product-dot-yellow{ background:#FFBD2E; }
.product-dot-green{ background:#28C840; }

.product-window-title{
margin-left:auto;
margin-right:auto;
max-width:420px;
height:28px;
display:flex;
align-items:center;
padding:0 12px;
border-radius:999px;
background:rgba(255,255,255,0.04);
border:1px solid rgba(255,255,255,0.10);
box-shadow:
0 10px 24px rgba(0,0,0,0.30),
0 0 0 1px rgba(0,0,0,0.18) inset;
font-size:12px;
letter-spacing:0.4px;
color:rgba(229,231,235,0.78);
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}

.product-window-title::before{
content:"https://";
color:rgba(170,176,186,0.72);
}

.product-chips{
position:absolute;
left:14px;
bottom:14px;
display:flex;
gap:8px;
flex-wrap:wrap;
z-index:2;
pointer-events:none;
}

.product-chip{
display:inline-flex;
align-items:center;
padding:8px 10px;
border-radius:999px;
background:rgba(11,15,26,0.62);
backdrop-filter:blur(8px);
border:1px solid rgba(255,255,255,0.10);
color:rgba(229,231,235,0.82);
font-size:12px;
letter-spacing:0.2px;
box-shadow:0 14px 30px rgba(0,0,0,0.38);
}

.product-shot{
position:absolute;
left:0;
right:0;
bottom:0;
top:44px;
width:100%;
height:calc(100% - 44px);
object-fit:cover;
object-position:top left;
display:block;
transform:translate3d(0,0,0) scale(1.01);
backface-visibility:hidden;
image-rendering:-webkit-optimize-contrast;
filter:contrast(1.04) saturate(1.05);
z-index:1;
}

.product-card.is-left{
opacity:0.78;
transform:perspective(1200px) rotateY(14deg) rotateX(1.5deg) translate3d(-70px, 16px, -120px) scale(0.94);
filter:brightness(0.92) saturate(0.95);
z-index:1;
}

.product-card.is-center{
opacity:1;
transform:perspective(1200px) rotateY(8deg) rotateX(2deg) translate3d(0px, 0px, 0px) scale(1.0);
filter:none;
z-index:3;
}

.product-card.is-right{
opacity:0.66;
transform:perspective(1200px) rotateY(2deg) rotateX(1.2deg) translate3d(80px, 28px, -160px) scale(0.92);
filter:brightness(0.90) saturate(0.92);
z-index:0;
}

.product-card.is-exit-right{
opacity:0;
transform:perspective(1200px) rotateY(0deg) rotateX(0deg) translate3d(160px, 22px, -240px) scale(0.88);
}

.product-card.is-enter-left{
opacity:0;
transform:perspective(1200px) rotateY(18deg) rotateX(1deg) translate3d(-160px, 10px, -240px) scale(0.88);
}

.product-card.is-left .product-chips,
.product-card.is-right .product-chips{
opacity:0.0;
}


.partners{
padding:80px 0 110px;
position:relative;
overflow:hidden;
background:
radial-gradient(900px 420px at 15% 18%, rgba(255,215,0,0.14), rgba(255,215,0,0) 62%),
radial-gradient(900px 420px at 88% 75%, rgba(93,212,255,0.12), rgba(93,212,255,0) 60%),
radial-gradient(2px 2px at 12% 22%, rgba(93,212,255,0.24), rgba(93,212,255,0) 70%),
radial-gradient(2px 2px at 78% 38%, rgba(255,215,0,0.22), rgba(255,215,0,0) 70%),
radial-gradient(2px 2px at 58% 82%, rgba(93,212,255,0.18), rgba(93,212,255,0) 70%),
repeating-linear-gradient(90deg, rgba(255,255,255,0.06) 0 1px, rgba(255,255,255,0) 1px 120px),
repeating-linear-gradient(0deg, rgba(255,255,255,0.05) 0 1px, rgba(255,255,255,0) 1px 120px),
linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0));
background-position:0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0;
animation:partners-grid-pan 18s linear infinite;
}

.partners::before{
content:"";
position:absolute;
inset:-2px;
background:
linear-gradient(90deg, rgba(201,169,110,0.00), rgba(201,169,110,0.12), rgba(93,212,255,0.10), rgba(201,169,110,0.00));
opacity:0.72;
pointer-events:none;
transform:translateY(-60%) rotate(-8deg);
filter:blur(28px);
animation:partners-scan 6.2s ease-in-out infinite;
will-change:transform, opacity;
}

.partners::after{
content:"";
position:absolute;
inset:0;
background:
radial-gradient(700px 360px at 50% 0%, rgba(255,255,255,0.06), rgba(255,255,255,0) 60%),
radial-gradient(600px 320px at 50% 100%, rgba(255,255,255,0.04), rgba(255,255,255,0) 62%);
pointer-events:none;
opacity:0.55;
}

.partners .container{
position:relative;
z-index:1;
}

.partners-title{
font-size:36px;
letter-spacing:0.8px;
margin-bottom:14px;
background:linear-gradient(90deg,#C9A96E,#FFD700 45%,#5DD4FF);
-webkit-background-clip:text;
background-clip:text;
color:transparent;
}

.partners-subtitle{
max-width:920px;
margin:0 auto 36px;
text-align:center;
color:#AAB0BA;
line-height:1.7;
font-size:14px;
}

.partners-grid{
display:grid;
grid-template-columns:repeat(7, minmax(120px, 1fr));
gap:18px;
align-items:stretch;
}

.partner-card{
height:88px;
border-radius:12px;
position:relative;
isolation:isolate;
background:rgba(255,255,255,0.04);
border:1px solid rgba(255,255,255,0.07);
box-shadow:0 18px 40px rgba(0,0,0,0.35);
display:flex;
align-items:center;
justify-content:center;
padding:0 10px;
transform:translateY(0);
transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
}

.partner-card::before{
content:"";
position:absolute;
inset:-1px;
border-radius:12px;
padding:1px;
background:conic-gradient(
from 0deg,
rgba(255,215,0,0.00) 0%,
rgba(255,215,0,0.00) 82%,
rgba(255,215,0,0.95) 84%,
rgba(93,212,255,0.95) 88%,
rgba(255,215,0,0.00) 92%,
rgba(255,215,0,0.00) 100%
);
opacity:0.0;
pointer-events:none;
z-index:1;
animation:none;
will-change:transform, opacity;
-webkit-mask:
linear-gradient(#000 0 0) content-box,
linear-gradient(#000 0 0);
-webkit-mask-composite:xor;
mask-composite:exclude;
filter:drop-shadow(0 0 14px rgba(93,212,255,0.10)) drop-shadow(0 0 12px rgba(255,215,0,0.10));
}

.partner-card:hover{
transform:translateY(-10px) scale(1.03);
border-color:rgba(255,215,0,0.22);
background:rgba(255,255,255,0.06);
box-shadow:
0 28px 70px rgba(0,0,0,0.45),
0 0 0 1px rgba(255,215,0,0.10) inset,
0 0 34px rgba(255,215,0,0.14),
0 0 28px rgba(93,212,255,0.10);
}

.partner-card::before{
opacity:0.16;
}

.partner-card::after{
content:"";
position:absolute;
inset:0;
border-radius:12px;
background:
linear-gradient(120deg, rgba(255,255,255,0.00), rgba(255,255,255,0.14), rgba(255,255,255,0.00)),
radial-gradient(220px 90px at 20% 25%, rgba(255,215,0,0.16), rgba(255,215,0,0.00) 60%),
radial-gradient(220px 90px at 80% 75%, rgba(93,212,255,0.14), rgba(93,212,255,0.00) 62%);
opacity:0;
transform:translateX(-35%);
pointer-events:none;
transition:opacity .22s ease;
z-index:0;
}

.partner-card:hover::after{
opacity:1;
animation:partner-shine 900ms ease-out 1, partner-pulse 2.4s ease-in-out infinite;
}

.partner-card.will-reveal{
opacity:0;
transform:translateY(10px);
}

.partner-card.will-reveal.is-visible{
opacity:1;
transform:translateY(0);
}

.partner-card img{
max-width:100%;
max-height:60px;
width:auto;
height:auto;
object-fit:contain;
transform:translate3d(0,0,0);
backface-visibility:hidden;
image-rendering:-webkit-optimize-contrast;
will-change:transform;
animation:partner-drift 3.8s ease-in-out infinite;
filter:contrast(1.05) saturate(1.06) drop-shadow(0 10px 18px rgba(0,0,0,0.35));
}

.partner-card:nth-child(3n+1) img{ animation-duration:3.6s; animation-delay:-0.8s; }
.partner-card:nth-child(3n+2) img{ animation-duration:4.1s; animation-delay:-1.6s; }
.partner-card:nth-child(3n) img{ animation-duration:3.9s; animation-delay:-2.3s; }

.partner-card:hover img{
filter:
drop-shadow(0 12px 22px rgba(0,0,0,0.45))
drop-shadow(0 0 16px rgba(255,215,0,0.18))
drop-shadow(0 0 12px rgba(93,212,255,0.12));
}

@keyframes partners-scan{
0%{ transform:translateY(-70%) rotate(-8deg); opacity:0.0; }
18%{ opacity:0.75; }
52%{ opacity:0.45; }
100%{ transform:translateY(180%) rotate(-8deg); opacity:0.0; }
}

@keyframes partners-grid-pan{
0%{ background-position:0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0; }
100%{ background-position:0 0, 0 0, 0 0, 0 0, 0 0, 240px 0, 0 240px, 0 0; }
}

@keyframes partner-shine{
0%{ transform:translateX(-45%); }
100%{ transform:translateX(45%); }
}

@keyframes partner-pulse{
0%, 100%{ opacity:0.26; }
40%{ opacity:0.52; }
70%{ opacity:0.34; }
}

@keyframes partner-drift{
0%, 100%{ transform:translate3d(-6px, 0, 0); }
50%{ transform:translate3d(6px, 0, 0); }
}

/* CTA */
.cta{
padding:80px 0;
text-align:center;
}

.cta-card{
display:flex;
flex-direction:column;
align-items:flex-start;
justify-content:flex-start;
gap:18px;
padding:34px 34px;
border-radius:18px;
background:
radial-gradient(900px 360px at 15% 10%, rgba(255,215,0,0.20), rgba(255,215,0,0) 60%),
radial-gradient(900px 360px at 90% 80%, rgba(201,169,110,0.16), rgba(201,169,110,0) 55%),
rgba(255,255,255,0.03);
border:1px solid rgba(255,215,0,0.14);
box-shadow:0 22px 50px rgba(0,0,0,0.45);
}

.cta-text{
text-align:left;
width:100%;
}

.cta-subtitle{
margin-top:10px;
color:#AAB0BA;
line-height:1.6;
}

.cta-points{
display:flex;
gap:10px;
flex-wrap:wrap;
margin-top:16px;
}

.cta-point{
display:inline-flex;
align-items:center;
padding:8px 12px;
border-radius:999px;
background:rgba(255,255,255,0.04);
border:1px solid rgba(255,255,255,0.08);
color:#E5E7EB;
font-size:13px;
}

.support-carousel{
width:100%;
margin-top:18px;
}

.support-viewport{
width:100%;
max-width:100%;
overflow:hidden;
position:relative;
padding:12px;
border-radius:18px;
background:rgba(255,255,255,0.028);
border:1px solid rgba(255,255,255,0.08);
}

.support-track{
display:flex;
flex-direction:row;
flex-wrap:nowrap;
gap:14px;
transform:translate3d(0,0,0);
transition:transform 560ms ease;
will-change:transform;
}

.support-card{
display:grid;
grid-template-columns:112px 1fr;
gap:14px;
padding:14px;
border-radius:24px;
width:clamp(280px, 30vw, 340px);
flex:0 0 auto;
color:#E5E7EB;
background:
radial-gradient(260px 180px at 15% 20%, rgba(93,212,255,0.12), rgba(93,212,255,0) 60%),
linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.02));
border:1px solid rgba(255,255,255,0.10);
box-shadow:0 18px 42px rgba(0,0,0,0.38);
transition:transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
position:relative;
overflow:hidden;
}

.support-card::before{
content:"";
position:absolute;
left:-32px;
top:-32px;
width:120px;
height:120px;
background:radial-gradient(closest-side, rgba(93,212,255,0.22), rgba(93,212,255,0) 70%);
pointer-events:none;
}

.support-card:hover,
.support-card:focus-visible{
border-color:rgba(255,215,0,0.20);
transform:translate3d(0,-1px,0);
box-shadow:0 22px 54px rgba(0,0,0,0.50);
}

.support-profile{
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
gap:10px;
text-align:center;
}

.support-avatar{
--avatar-img:none;
width:78px;
height:98px;
border-radius:18px;
border:1px solid rgba(255,255,255,0.22);
box-shadow:0 18px 32px rgba(0,0,0,0.45);
background-color:rgba(255,255,255,0.05);
background-image:
radial-gradient(circle at 30% 30%, rgba(255,255,255,0.32), rgba(255,255,255,0) 60%),
linear-gradient(135deg, rgba(93,212,255,0.70), rgba(201,169,110,0.60)),
var(--avatar-img);
background-size:cover;
background-position:center;
background-repeat:no-repeat;
}

.support-avatar.is-a{
--avatar-img:url("../assets/image/avatars/01.jpg");
}

.support-avatar.is-b{
--avatar-img:url("../assets/image/avatars/02.jpg");
}

.support-avatar.is-c{
--avatar-img:url("../assets/image/avatars/03.jpg");
}

.support-profile-title{
font-size:12px;
letter-spacing:0.4px;
color:#D7DCE4;
opacity:0.92;
padding:6px 10px;
border-radius:999px;
background:rgba(255,255,255,0.05);
border:1px solid rgba(255,255,255,0.08);
}

.support-profile-name{
font-size:14px;
font-weight:700;
letter-spacing:0.2px;
}

.support-rows{
display:flex;
flex-direction:column;
justify-content:center;
gap:10px;
min-width:0;
}

.support-row{
display:flex;
align-items:center;
gap:10px;
padding:10px 12px;
border-radius:18px;
background:rgba(11,15,26,0.28);
border:1px solid rgba(255,255,255,0.09);
transition:transform .18s ease, border-color .18s ease, background .18s ease;
}

.support-row:hover{
transform:translate3d(0,-1px,0);
border-color:rgba(255,255,255,0.16);
background:rgba(255,255,255,0.075);
}

.support-row-icon{
width:34px;
height:34px;
border-radius:14px;
display:flex;
align-items:center;
justify-content:center;
color:#0B0F1A;
flex:0 0 auto;
box-shadow:0 12px 22px rgba(0,0,0,0.32);
}

.support-row-icon.is-tg{
background:linear-gradient(180deg, rgba(93,212,255,0.95), rgba(93,212,255,0.78));
}

.support-row-icon.is-wx{
background:linear-gradient(180deg, rgba(74,222,128,0.95), rgba(34,197,94,0.78));
}

.support-row-icon.is-mail{
background:linear-gradient(180deg, rgba(251,191,36,0.95), rgba(245,158,11,0.78));
}

.support-row-text{
flex:1 1 auto;
min-width:0;
font-size:13px;
color:#E5E7EB;
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}

.support-row-copy{
width:36px;
height:36px;
border-radius:14px;
border:1px solid rgba(255,255,255,0.12);
background:rgba(0,0,0,0.14);
color:#E5E7EB;
display:flex;
align-items:center;
justify-content:center;
cursor:pointer;
transition:transform .12s ease, border-color .18s ease, background .18s ease, color .18s ease;
flex:0 0 auto;
}

.support-row-copy:hover{
border-color:rgba(255,255,255,0.18);
background:rgba(0,0,0,0.22);
}

.support-row-copy:active{
transform:scale(0.96);
}

.support-row-copy.is-copied{
border-color:rgba(93,212,255,0.36);
background:rgba(93,212,255,0.14);
color:rgba(93,212,255,0.95);
}

.support-track.is-animating{
pointer-events:none;
}

/* floating */
.floating-contact{
position:fixed;
right:15px;
bottom:20px;
display:flex;
flex-direction:column;
gap:10px;
z-index:120;
}

.floating-tg{
position:relative;
display:flex;
align-items:center;
justify-content:flex-end;
}

.floating-tg-btn{
background:linear-gradient(180deg, #FFD700, #C9A96E);
color:#0B0F1A;
border:0;
border-radius:50%;
display:inline-flex;
align-items:center;
justify-content:center;
width:44px;
height:44px;
cursor:pointer;
box-shadow:0 12px 28px rgba(0,0,0,0.45);
}

.floating-tg-panel{
position:absolute;
right:46px;
bottom:0;
display:flex;
flex-direction:column;
gap:8px;
padding:10px;
min-width:224px;
border-radius:16px;
background:linear-gradient(180deg, rgba(15,19,32,0.92), rgba(11,15,26,0.92));
border:1px solid rgba(255,255,255,0.10);
box-shadow:0 22px 56px rgba(0,0,0,0.62);
backdrop-filter:blur(14px);
opacity:0;
transform:translate3d(10px,0,0);
pointer-events:none;
transition:opacity .2s ease, transform .2s ease;
}

.floating-tg-panel::after{
content:"";
position:absolute;
right:-18px;
top:0;
bottom:0;
width:18px;
background:transparent;
pointer-events:auto;
}

.floating-tg.is-open .floating-tg-panel{
opacity:1;
transform:translate3d(0,0,0);
pointer-events:auto;
}

@media (hover:hover) and (pointer:fine){
  .floating-tg:hover .floating-tg-panel{
    opacity:1;
    transform:translate3d(0,0,0);
    pointer-events:auto;
  }
}

.floating-tg-item{
display:flex;
align-items:center;
justify-content:space-between;
gap:12px;
padding:10px 12px;
border-radius:14px;
text-decoration:none;
color:#E5E7EB;
background:rgba(255,255,255,0.03);
border:1px solid rgba(255,255,255,0.08);
}

.floating-tg-item:hover,
.floating-tg-item:focus-visible{
border-color:rgba(255,215,0,0.22);
background:rgba(255,255,255,0.05);
}

.floating-tg-name{
font-weight:700;
font-size:13px;
}

.floating-tg-handle{
font-size:12px;
color:#AAB0BA;
}

.back-top{
background:rgba(255,255,255,0.06);
color:#E5E7EB;
padding:10px;
border-radius:50%;
width:44px;
height:44px;
border:1px solid rgba(255,255,255,0.12);
cursor:pointer;
display:inline-flex;
align-items:center;
justify-content:center;
box-shadow:0 8px 18px rgba(0,0,0,0.4);
opacity:0;
transform:translateY(6px);
transition:.25s;
}

.back-top.is-visible{
opacity:1;
transform:translateY(0);
}

/* ===== 移动端 ===== */
@media(max-width:768px){

.menu-toggle{display:block;}

body.nav-open::before{
content:"";
position:fixed;
inset:0;
background:rgba(0,0,0,0.55);
z-index:90;
}

.nav{
position:fixed;
right:-100%;
top:0;
width:70%;
height:100%;
background:
radial-gradient(600px 360px at 20% 10%, rgba(255,215,0,0.16), rgba(255,215,0,0) 60%),
linear-gradient(180deg, rgba(201,169,110,0.12), rgba(11,15,26,0.98) 35%, #0B0F1A 100%);
flex-direction:column;
padding-top:12px;
transition:.3s;
border-left:1px solid rgba(255,255,255,0.06);
z-index:110;
backdrop-filter:blur(14px);
box-shadow:-22px 0 46px rgba(0,0,0,0.55);
overflow:auto;
}

.nav.active{right:0;}

.nav-list{
flex-direction:column;
align-items:stretch;
width:100%;
}

.nav a{
margin:6px 14px;
font-size:16px;
padding:12px 14px;
border-radius:14px;
}

.nav a.active::after{
display:none;
}

.nav-mobile-header{
display:flex;
}

.nav-cta{
display:flex;
}

.header-cta{
display:none;
}

.lang-switch{
margin-left:0;
}

.lang-select{
height:40px;
border-radius:12px;
padding:0 38px 0 38px;
max-width:170px;
min-width:0;
}

.logo img{
height:32px;
}

.hero-title{
margin-bottom:12px;
}

.hero-brand{
font-size:13px;
margin-bottom:8px;
}

.hero-brandline{
font-size:13px;
}

.hero-inner,
.product-inner{
flex-direction:column;
text-align:center;
}

.hero-left h1{font-size:26px;}

.hero-right{
justify-content:center;
}

.hero-media{
width:100%;
max-width:680px;
transform:none;
}

.product-image{
justify-content:center;
}

.product-stack{
width:100%;
max-width:680px;
margin:0 auto;
}

.product-card{
transform:none !important;
}

.product-card.is-left,
.product-card.is-right{
display:none;
}

.product-card.is-center{
position:relative;
inset:auto;
display:block;
}

.product-chips{
justify-content:center;
left:14px;
right:14px;
}

.feature-grid{grid-template-columns:1fr;}

.btn{width:100%;}

.hero-buttons{
width:100%;
}

.partners-title{
font-size:26px;
}

.partners-grid{
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:14px;
}


.hero{
padding:110px 0 70px;
}

.cta{
padding:70px 0;
}

.cta-card{
flex-direction:column;
align-items:stretch;
text-align:center;
padding:26px 18px;
}

.cta-text{
text-align:center;
}

.support-carousel{
margin-top:16px;
}

.support-viewport{
max-width:100%;
margin:0 auto;
padding:10px;
border-radius:18px;
}

.support-track{
gap:12px;
}

.support-card{
width:clamp(260px, 86vw, 340px);
}

.support-profile{
gap:8px;
}

.floating-contact{
right:12px;
bottom:16px;
}
}

@media (prefers-reduced-motion: reduce){
*{
scroll-behavior:auto !important;
transition:none !important;
animation:none !important;
}
}
