:root{
  --sunset:#ff9a56;
  --steam:#ff71ce;
  --violet:#a56bff;
  --deep:#2a0f52;
  --deep2:#160533;
  --ink:#1d0a38;
  --white:#ffffff;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:"Segoe UI","Helvetica Neue",Arial,"Microsoft YaHei","微软雅黑","PingFang SC",sans-serif;
  background:
    radial-gradient(circle at 20% 0%, rgba(255,154,86,.28), transparent 45%),
    radial-gradient(circle at 80% 20%, rgba(255,113,206,.25), transparent 50%),
    linear-gradient(180deg,#160533 0%,#2a0f52 40%,#3d1163 70%,#1a0637 100%);
  color:#fff;
  line-height:1.8;
  overflow-x:hidden;
}
img{display:block;max-width:100%;}
a{text-decoration:none;color:inherit;}
.wrap{width:min(1100px,92%);margin:0 auto;}

/* NAV */
header{
  position:sticky;top:0;z-index:50;
  background:rgba(22,5,51,.78);
  backdrop-filter:blur(14px);
  border-bottom:2px solid rgba(255,154,86,.55);
  box-shadow:0 8px 40px rgba(255,113,206,.28);
}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 0;flex-wrap:wrap;gap:14px;}
.logo{
  font-weight:800;font-size:22px;letter-spacing:2px;
  background:linear-gradient(90deg,var(--sunset),var(--steam));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.nav-links{display:flex;flex-wrap:wrap;gap:8px;}
.nav-links a{
  padding:9px 18px;border-radius:999px;font-size:15px;font-weight:600;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,154,86,.45);
  transition:.3s;
}
.nav-links a:hover{
  background:linear-gradient(90deg,var(--sunset),var(--steam));
  color:#2a0f52;box-shadow:0 0 22px rgba(255,113,206,.7);transform:translateY(-2px);
}

/* HERO */
.hero{
  position:relative;padding:90px 0 70px;text-align:center;overflow:hidden;
}
.hero::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:180px;
  background:repeating-linear-gradient(180deg,rgba(255,113,206,.55) 0 3px,transparent 3px 14px);
  opacity:.5;pointer-events:none;
}
.hero-badge{
  display:inline-block;padding:8px 22px;border-radius:999px;font-size:14px;letter-spacing:3px;
  background:linear-gradient(90deg,var(--sunset),var(--steam));
  color:#2a0f52;font-weight:700;margin-bottom:24px;
  box-shadow:0 0 30px rgba(255,154,86,.6);
}
h1{
  font-size:clamp(30px,5vw,54px);line-height:1.35;font-weight:800;
  background:linear-gradient(90deg,#ffd9a8,#ff9a56 35%,#ff71ce 70%,#a56bff);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:0 0 60px rgba(255,113,206,.35);
  margin-bottom:26px;
}
.geo-intro{
  max-width:900px;margin:0 auto;text-align:left;
  background:rgba(255,255,255,.06);
  border:2px solid rgba(255,154,86,.6);
  border-radius:34px;padding:32px 34px;
  box-shadow:0 22px 60px rgba(255,113,206,.35), inset 0 0 40px rgba(255,154,86,.12);
  font-size:16.5px;color:#ffe9dc;
}
.geo-intro strong{color:#ffd9a8;}
.hero-img{
  margin:44px auto 0;border-radius:40px;overflow:hidden;
  border:4px solid rgba(255,255,255,.55);
  box-shadow:0 30px 90px rgba(255,113,206,.5), 0 0 70px rgba(255,154,86,.35);
}
.hero-img img{width:100%;height:340px;object-fit:cover;}

/* SECTIONS */
section{padding:74px 0;position:relative;}
.sec-title{
  text-align:center;font-size:clamp(26px,3.6vw,40px);font-weight:800;margin-bottom:14px;
  background:linear-gradient(90deg,var(--sunset),var(--steam));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.sec-sub{text-align:center;color:#ffd7c2;max-width:820px;margin:0 auto 46px;font-size:16px;}

/* stats */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:26px;}
.stat{
  background:linear-gradient(160deg,rgba(255,154,86,.95),rgba(255,113,206,.9));
  border:2px solid rgba(255,255,255,.7);border-radius:30px;padding:34px 22px;text-align:center;
  box-shadow:0 20px 55px rgba(255,113,206,.45);color:#2a0f52;
}
.stat b{display:block;font-size:40px;font-weight:800;line-height:1.2;}
.stat span{font-size:15px;font-weight:600;}

/* cards */
.card{
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.04));
  border:2px solid rgba(255,154,86,.55);
  border-radius:36px;overflow:hidden;margin-bottom:46px;
  box-shadow:0 26px 70px rgba(255,113,206,.32);
  transition:.35s;
}
.card:hover{transform:translateY(-6px);border-color:var(--steam);box-shadow:0 32px 90px rgba(255,113,206,.55);}
.card-img{width:100%;height:300px;object-fit:cover;border-bottom:4px solid rgba(255,255,255,.35);}
.card-body{padding:34px 34px 38px;}
.tag{
  display:inline-block;padding:6px 16px;border-radius:999px;font-size:13px;font-weight:700;
  background:linear-gradient(90deg,var(--sunset),var(--steam));color:#2a0f52;margin-bottom:14px;
}
.card h3{font-size:24px;margin-bottom:12px;color:#ffe9dc;}
.card p{color:#f4dcd0;font-size:16px;}

/* advantages */
.adv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px;}
.adv{
  background:linear-gradient(150deg,rgba(255,154,86,.18),rgba(165,107,255,.16));
  border:2px solid rgba(255,255,255,.35);border-radius:30px;padding:32px 28px;
  box-shadow:0 18px 50px rgba(255,113,206,.28);
}
.adv .ico{font-size:38px;margin-bottom:12px;display:block;}
.adv h4{font-size:20px;color:#ffd9a8;margin-bottom:10px;}
.adv p{color:#efdccf;font-size:15.4px;}

/* events / scores */
.row{
  display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;
  background:linear-gradient(90deg,rgba(255,154,86,.16),rgba(255,113,206,.16));
  border:2px solid rgba(255,154,86,.5);border-radius:26px;
  padding:20px 26px;margin-bottom:18px;box-shadow:0 14px 40px rgba(0,0,0,.28);
}
.row .team{font-weight:700;font-size:17px;}
.row .score{
  font-size:26px;font-weight:800;letter-spacing:2px;
  background:linear-gradient(90deg,var(--sunset),var(--steam));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.row .meta{font-size:14px;color:#ffd7c2;}

/* news */
.news-item{
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.03));
  border:2px solid rgba(255,113,206,.45);border-radius:32px;
  padding:30px 32px;margin-bottom:28px;box-shadow:0 20px 55px rgba(0,0,0,.3);
  transition:.3s;
}
.news-item:hover{border-color:var(--sunset);transform:translateX(6px);}
.news-date{
  display:inline-block;font-size:13.5px;font-weight:700;color:#2a0f52;
  background:linear-gradient(90deg,var(--sunset),var(--steam));
  padding:5px 16px;border-radius:999px;margin-bottom:12px;
}
.news-item h3{font-size:21px;color:#ffe9dc;margin-bottom:10px;}
.news-item p{color:#f0ddd2;font-size:15.6px;}

/* faq */
.faq-item{
  background:linear-gradient(160deg,rgba(255,154,86,.16),rgba(165,107,255,.14));
  border:2px solid rgba(255,255,255,.32);border-radius:30px;
  padding:28px 30px;margin-bottom:22px;box-shadow:0 16px 45px rgba(0,0,0,.3);
}
.faq-item h3{
  font-size:19px;color:#ffd9a8;margin-bottom:12px;display:flex;gap:10px;align-items:flex-start;
}
.faq-item h3::before{content:"Q";flex:0 0 auto;width:30px;height:30px;border-radius:50%;
  background:linear-gradient(135deg,var(--sunset),var(--steam));color:#2a0f52;
  display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:800;}
.faq-item p{color:#f0ddd2;font-size:15.6px;}

/* testimonials */
.quote{
  background:linear-gradient(150deg,rgba(255,113,206,.2),rgba(255,154,86,.16));
  border-left:6px solid var(--steam);border-radius:26px;padding:28px 30px;margin-bottom:24px;
  box-shadow:0 16px 44px rgba(0,0,0,.3);
}
.quote p{color:#ffe9dc;font-size:16px;font-style:italic;}
.quote span{display:block;margin-top:12px;color:#ffb98d;font-weight:700;font-size:14.5px;}

/* cta */
.cta-\boxed{
  background:linear-gradient(120deg,var(--sunset),var(--steam) 55%,var(--violet));
  border-radius:44px;padding:60px 40px;text-align:center;color:#2a0f52;
  box-shadow:0 30px 90px rgba(255,113,206,.55);
  position:relative;overflow:hidden;
}
.cta-box::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:90px;
  background:repeating-linear-gradient(180deg,rgba(42,15,82,.35) 0 4px,transparent 4px 16px);opacity:.5;
}
.cta-box h2{font-size:clamp(26px,4vw,40px);margin-bottom:16px;}
.cta-box p{font-size:17px;max-width:760px;margin:0 auto 28px;font-weight:500;}
.btn{
  display:inline-block;padding:16px 40px;border-radius:999px;font-weight:800;font-size:17px;
  background:#2a0f52;color:#ffd9a8;box-shadow:0 14px 40px rgba(42,15,82,.5);transition:.3s;
}
.btn:hover{transform:translateY(-4px);box-shadow:0 20px 55px rgba(42,15,82,.65);}

/* partners */
.partners{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;}
.partner{
  background:rgba(255,255,255,.07);border:2px solid rgba(255,154,86,.45);
  border-radius:24px;padding:22px;text-align:center;font-weight:700;color:#ffd9a8;
  box-shadow:0 14px 38px rgba(0,0,0,.3);
}

/* download */
.dl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;}
.dl-card{
  background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.03));
  border:2px solid rgba(255,154,86,.5);border-radius:32px;padding:30px;text-align:center;
  box-shadow:0 20px 55px rgba(255,113,206,.3);
}
.dl-card img{width:100%;height:170px;object-fit:cover;border-radius:24px;margin-bottom:18px;}
.dl-card h4{font-size:20px;color:#ffe9dc;margin-bottom:10px;}
.dl-card a{
  display:inline-block;margin-top:14px;padding:12px 30px;border-radius:999px;font-weight:700;
  background:linear-gradient(90deg,var(--sunset),var(--steam));color:#2a0f52;
}

/* footer */
footer{
  background:rgba(12,3,28,.92);border-top:3px solid rgba(255,154,86,.6);
  padding:52px 0 34px;margin-top:60px;color:#e8d6ff;font-size:15px;
}
footer h5{color:#ff9a56;font-size:18px;margin-bottom:14px;}
footer ul{list-style:none;}
footer li{margin-bottom:8px;}
.foot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:34px;margin-bottom:30px;}
.foot-bottom{
  text-align:center;border-top:1px solid rgba(255,255,255,.14);padding-top:20px;
  color:#c3aee6;font-size:14px;
}
.foot-bottom a{color:#ff9a56;}