*{margin:0;padding:0;box-sizing:border-box;}
html,body{
  font-family:"Segoe UI","Helvetica Neue",Arial,"Microsoft YaHei","微软雅黑","PingFang SC",sans-serif;
}
body{
  background:linear-gradient(165deg,#0a0a0a 0%,#12082b 38%,#1d1149 68%,#2d1b69 100%);
  background-attachment:fixed;
  color:#e9e7f7;
  line-height:1.85;
  font-size:16px;
  letter-spacing:.2px;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
h1,h2,h3,h4{font-family:inherit;line-height:1.35;}
:root{
  --pink:#ec4899;
  --cyan:#22d3ee;
  --purple:#2d1b69;
  --ink:#0a0a0a;
  --card:rgba(20,12,48,.72);
}
/* ===== 顶部导航 ===== */
.topbar{
  position:sticky;top:0;z-index:99;
  backdrop-filter:blur(14px);
  background:rgba(10,10,10,.78);
  border-bottom:1px solid rgba(236,72,153,.35);
  box-shadow:0 0 30px rgba(34,211,238,.14);
}
.topbar-inner{
  max-width:1220px;margin:0 auto;padding:14px 20px;
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;
}
.logo{
  font-size:19px;font-weight:800;letter-spacing:1px;
  background:linear-gradient(90deg,#ec4899,#22d3ee);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:0 0 22px rgba(236,72,153,.35);
  white-space:nowrap;
}
.nav-links{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.nav-links a{
  padding:7px 14px;border-radius:999px;font-size:14px;font-weight:600;
  border:1px solid rgba(34,211,238,.35);
  color:#d6d3f0;
  transition:.28s;
  background:rgba(45,27,105,.35);
}
.nav-links a:hover{
  color:#fff;
  border-color:var(--pink);
  background:linear-gradient(90deg,rgba(236,72,153,.35),rgba(34,211,238,.25));
  box-shadow:0 0 18px rgba(236,72,153,.55),0 0 34px rgba(34,211,238,.28);
  transform:translateY(-2px);
}
/* ===== 容器 ===== */
.wrap{max-width:1220px;margin:0 auto;padding:0 20px;}
section{padding:64px 0;}
.sec-head{margin-bottom:34px;}
.sec-head h2{
  font-size:27px;font-weight:800;letter-spacing:.6px;
  display:inline-block;position:relative;
  background:linear-gradient(90deg,#fff,#22d3ee 60%,#ec4899);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.sec-head h2::after{
  content:"";display:block;height:3px;width:78px;margin-top:10px;border-radius:3px;
  background:linear-gradient(90deg,#ec4899,#22d3ee);
  box-shadow:0 0 14px rgba(236,72,153,.8);
}
.sec-head p{color:#a9a4cc;font-size:15px;margin-top:12px;max-width:880px;}
/* ===== HERO ===== */
#hero{
  position:relative;overflow:hidden;
  padding:78px 0 66px;
  border-bottom:1px solid rgba(34,211,238,.16);
}
#hero::before{
  content:"";position:absolute;width:520px;height:520px;border-radius:50%;
  background:radial-gradient(circle,rgba(236,72,153,.38),transparent 68%);
  top:-190px;right:-120px;filter:blur(20px);
}
#hero::after{
  content:"";position:absolute;width:460px;height:460px;border-radius:50%;
  background:radial-gradient(circle,rgba(34,211,238,.30),transparent 70%);
  bottom:-220px;left:-140px;filter:blur(24px);
}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center;position:relative;z-index:2;}
.tagline{
  display:inline-block;font-size:13px;font-weight:700;letter-spacing:2px;
  padding:6px 16px;border-radius:999px;margin-bottom:20px;
  color:#22d3ee;border:1px solid rgba(34,211,238,.5);
  background:rgba(34,211,238,.08);
  box-shadow:0 0 18px rgba(34,211,238,.28) inset;
}
h1{
  font-size:38px;font-weight:900;line-height:1.3;letter-spacing:.5px;
  background:linear-gradient(92deg,#ffffff 0%,#ec4899 45%,#22d3ee 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:0 0 42px rgba(236,72,153,.28);
  margin-bottom:20px;
}
.hero-sub{color:#b6b1d8;font-size:15.5px;max-width:620px;}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px;}
.btn{
  display:inline-block;padding:12px 28px;border-radius:999px;font-weight:700;font-size:15px;
  transition:.3s;letter-spacing:.6px;
}
.btn-primary{
  color:#0a0a0a;
  background:linear-gradient(90deg,#ec4899,#22d3ee);
  box-shadow:0 0 24px rgba(236,72,153,.55),0 0 42px rgba(34,211,238,.30);
}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 0 34px rgba(236,72,153,.85),0 0 60px rgba(34,211,238,.45);}
.btn-ghost{
  color:#22d3ee;border:1px solid rgba(34,211,238,.6);
  background:rgba(34,211,238,.06);
}
.btn-ghost:hover{background:rgba(34,211,238,.16);color:#fff;transform:translateY(-3px);}
.hero-visual{position:relative;}
.hero-visual img{
  border-radius:22px;
  border:1px solid rgba(236,72,153,.42);
  box-shadow:0 0 0 1px rgba(34,211,238,.20) inset,0 0 46px rgba(236,72,153,.42),0 18px 48px rgba(0,0,0,.6);
}
/* ===== GEO 介绍 ===== */
#geo-intro .geo-card{
  background:linear-gradient(135deg,rgba(45,27,105,.62),rgba(10,10,10,.72));
  border:1px solid rgba(34,211,238,.28);
  border-radius:22px;padding:36px 34px;
  box-shadow:0 0 0 1px rgba(236,72,153,.16) inset,0 0 46px rgba(34,211,238,.14);
  position:relative;overflow:hidden;
}
#geo-intro .geo-card::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(120deg,transparent 30%,rgba(236,72,153,.12) 50%,transparent 70%);
  animation:sweep 7s linear infinite;
}
@keyframes sweep{0%{transform:translateX(-100%);}100%{transform:translateX(100%);}}
#geo-intro p{position:relative;z-index:2;color:#c7c2e8;font-size:16px;}
#geo-intro p strong{color:#22d3ee;font-weight:700;}
/* ===== 数据统计 ===== */
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:20px;}
.stat-card{
  background:var(--card);
  border:1px solid rgba(236,72,153,.30);
  border-radius:18px;padding:26px 22px;text-align:center;
  position:relative;overflow:hidden;
  transition:.34s;
  box-shadow:0 0 0 1px rgba(34,211,238,.12) inset;
}
.stat-card::after{
  content:"";position:absolute;top:0;left:0;width:100%;height:2px;
  background:linear-gradient(90deg,transparent,#ec4899,#22d3ee,transparent);
  opacity:.75;
}
.stat-card:hover{
  transform:translateY(-6px);
  border-color:rgba(34,211,238,.65);
  box-shadow:0 0 30px rgba(34,211,238,.30),0 0 60px rgba(236,72,153,.22);
}
.stat-num{
  font-size:34px;font-weight:900;letter-spacing:1px;
  background:linear-gradient(90deg,#ec4899,#22d3ee);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  display:block;margin-bottom:6px;
}
.stat-label{color:#a7a2cc;font-size:14px;}
/* ===== 核心优势 ===== */
.adv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px;}
.adv-card{
  background:linear-gradient(150deg,rgba(45,27,105,.55),rgba(10,10,10,.82));
  border:1px solid rgba(34,211,238,.24);
  border-radius:20px;padding:30px 26px;
  transition:.34s;position:relative;overflow:hidden;
}
.adv-card::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(180deg,#ec4899,#22d3ee);
  opacity:.85;
}
.adv-card:hover{
  transform:translateY(-6px) scale(1.008);
  border-color:rgba(236,72,153,.65);
  box-shadow:0 0 32px rgba(236,72,153,.34),0 0 64px rgba(34,211,238,.20);
}
.adv-icon{font-size:26px;margin-bottom:12px;display:block;}
.adv-card h3{font-size:18px;color:#fff;margin-bottom:10px;font-weight:800;}
.adv-card p{color:#b0abcf;font-size:14.5px;}
/* ===== 焦点赛事 ===== */
.event-list{display:grid;gap:18px;}
.event-row{
  display:grid;grid-template-columns:1fr auto 1fr auto;gap:18px;align-items:center;
  background:rgba(20,12,48,.70);
  border:1px solid rgba(34,211,238,.22);
  border-radius:18px;padding:20px 26px;
  transition:.3s;
}
.event-row:hover{
  border-color:rgba(236,72,153,.6);
  box-shadow:0 0 26px rgba(236,72,153,.30);
  transform:translateX(4px);
}
.team-name{font-weight:800;font-size:16px;color:#fff;}
.team-sub{font-size:12.5px;color:#8f89b8;}
.vs-badge{
  font-size:13px;font-weight:900;letter-spacing:2px;color:#0a0a0a;
  background:linear-gradient(90deg,#ec4899,#22d3ee);
  padding:6px 14px;border-radius:999px;
  box-shadow:0 0 18px rgba(236,72,153,.6);
  white-space:nowrap;
}
.event-meta{font-size:13px;color:#22d3ee;white-space:nowrap;font-weight:700;}
/* ===== 游戏推荐 ===== */
.rec-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:20px;}
.rec-card{
  border-radius:18px;overflow:hidden;position:relative;
  border:1px solid rgba(236,72,153,.26);
  background:rgba(20,12,48,.7);
  transition:.34s;
}
.rec-card img{height:150px;width:100%;object-fit:cover;opacity:.92;}
.rec-card .rec-body{padding:16px 18px;}
.rec-card h3{font-size:16px;color:#fff;margin-bottom:6px;font-weight:800;}
.rec-card p{font-size:13.5px;color:#a9a4cc;}
.rec-card:hover{
  transform:translateY(-6px);
  border-color:rgba(34,211,238,.7);
  box-shadow:0 0 30px rgba(34,211,238,.34),0 0 56px rgba(236,72,153,.20);
}
/* ===== 新闻 ===== */
.news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:22px;}
.news-card{
  background:linear-gradient(155deg,rgba(45,27,105,.48),rgba(10,10,10,.85));
  border:1px solid rgba(34,211,238,.22);
  border-radius:20px;padding:26px 24px;
  transition:.34s;position:relative;overflow:hidden;
}
.news-card:hover{
  transform:translateY(-6px);
  border-color:rgba(236,72,153,.62);
  box-shadow:0 0 32px rgba(236,72,153,.30),0 0 62px rgba(34,211,238,.18);
}
.news-date{
  display:inline-block;font-size:12.5px;font-weight:700;
  color:#0a0a0a;background:linear-gradient(90deg,#22d3ee,#ec4899);
  padding:3px 12px;border-radius:999px;margin-bottom:14px;
  letter-spacing:.5px;
}
.news-card h3{font-size:17px;color:#fff;margin-bottom:10px;font-weight:800;line-height:1.55;}
.news-card p{font-size:14.5px;color:#b0abcf;}
.news-more{
  display:inline-block;margin-top:26px;font-size:14.5px;font-weight:700;
  color:#22d3ee;border-bottom:1px dashed rgba(34,211,238,.6);padding-bottom:2px;
  transition:.3s;
}
.news-more:hover{color:#ec4899;border-color:rgba(236,72,153,.8);}
/* ===== 用户口碑 ===== */
.review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px;}
.review-card{
  background:rgba(20,12,48,.68);
  border:1px solid rgba(236,72,153,.24);
  border-radius:20px;padding:26px 24px;
  transition:.32s;
}
.review-card:hover{
  border-color:rgba(34,211,238,.62);
  box-shadow:0 0 28px rgba(34,211,238,.26);
  transform:translateY(-5px);
}
.review-text{color:#c5c0e4;font-size:14.5px;margin-bottom:16px;}
.review-user{font-size:13.5px;color:#22d3ee;font-weight:700;}
/* ===== FAQ ===== */
.faq-list{display:grid;gap:16px;}
.faq-item{
  background:linear-gradient(140deg,rgba(45,27,105,.52),rgba(10,10,10,.82));
  border:1px solid rgba(34,211,238,.22);
  border-radius:18px;padding:24px 26px;
  transition:.3s;
}
.faq-item:hover{
  border-color:rgba(236,72,153,.6);
  box-shadow:0 0 26px rgba(236,72,153,.26);
}
.faq-item h3{
  font-size:16.5px;color:#ffffff;margin-bottom:12px;font-weight:800;
  display:flex;gap:10px;align-items:flex-start;
}
.faq-item h3 span{
  color:#0a0a0a;background:linear-gradient(90deg,#ec4899,#22d3ee);
  width:24px;height:24px;line-height:24px;text-align:center;border-radius:8px;
  font-size:13px;flex:0 0 24px;margin-top:4px;font-weight:900;
}
.faq-item p{color:#b4afd4;font-size:14.5px;}
/* ===== CTA ===== */
#cta .cta-box{
  text-align:center;
  background:linear-gradient(125deg,rgba(236,72,153,.18),rgba(34,211,238,.14),rgba(45,27,105,.55));
  border:1px solid rgba(236,72,153,.45);
  border-radius:26px;padding:54px 30px;
  box-shadow:0 0 54px rgba(236,72,153,.26) inset,0 0 60px rgba(34,211,238,.16);
}
#cta h2{
  font-size:26px;font-weight:900;color:#fff;margin-bottom:16px;letter-spacing:.6px;
}
#cta p{color:#c2bde0;font-size:15.5px;max-width:760px;margin:0 auto 28px;}
/* ===== 合作伙伴 ===== */
.partner-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;}
.partner-item{
  text-align:center;padding:20px 12px;border-radius:14px;
  border:1px dashed rgba(34,211,238,.32);
  color:#9f9ac6;font-size:14px;font-weight:600;
  background:rgba(20,12,48,.5);
  transition:.3s;
}
.partner-item:hover{
  color:#22d3ee;border-style:solid;border-color:rgba(236,72,153,.7);
  box-shadow:0 0 22px rgba(236,72,153,.30);
}
/* ===== 页脚 ===== */
footer{
  border-top:1px solid rgba(236,72,153,.28);
  background:rgba(8,8,14,.88);
  padding:48px 0 26px;
  margin-top:20px;
}
.foot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;margin-bottom:32px;}
.foot-title{
  font-size:16px;font-weight:800;color:#fff;margin-bottom:14px;
  display:inline-block;border-left:3px solid #ec4899;padding-left:10px;
}
.foot-grid p,.foot-grid li{color:#9d98c2;font-size:14px;line-height:2;}
.foot-grid ul{list-style:none;}
.foot-grid a{color:#9d98c2;transition:.25s;}
.foot-grid a:hover{color:#22d3ee;}
.foot-bottom{
  border-top:1px solid rgba(34,211,238,.16);
  padding-top:20px;text-align:center;color:#807ba8;font-size:13.5px;
}
.foot-bottom a{color:#22d3ee;}
.foot-bottom a:hover{color:#ec4899;}
@media(max-width:900px){
  .hero-grid{grid-template-columns:1fr;}
  h1{font-size:29px;}
  .event-row{grid-template-columns:1fr;gap:10px;text-align:left;}
  .vs-badge{justify-self:start;}
}
@media(max-width:540px){
  section{padding:46px 0;}
  h1{font-size:25px;}
  .stat-num{font-size:28px;}
  .topbar-inner{padding:12px 14px;}
  .nav-links a{font-size:13px;padding:6px 11px;}
}