:root{
  --red:#dc2626;
  --dark-red:#991b1b;
  --warm-white:#fdfcfb;
  --light-gray:#f3f4f6;
  --mid-gray:#e5e7eb;
  --text:#1f2328;
  --text-soft:#555c66;
  --radius:10px;
  --shadow:0 2px 10px rgba(153,27,27,.08);
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:"Segoe UI","Helvetica Neue",Arial,"Microsoft YaHei","微软雅黑","PingFang SC",sans-serif;
  color:var(--text);
  background:var(--warm-white);
  line-height:1.75;
  font-size:16px;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:var(--red);text-decoration:none;}
a:hover{color:var(--dark-red);}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px;}

/* header */
.site-header{
  background:linear-gradient(120deg,var(--red) 0%,var(--dark-red) 100%);
  color:#fff;
  position:sticky;top:0;z-index:50;
  box-shadow:0 2px 12px rgba(0,0,0,.15);
}
.header-inner{
  display:flex;align-items:center;justify-content:space-between;
  gap:18px;padding:12px 0;flex-wrap:wrap;
}
.brand{display:flex;align-items:center;gap:10px;color:#fff;font-weight:700;font-size:1.18rem;letter-spacing:.5px;}
.brand .mark{
  width:34px;height:34px;border-radius:8px;
  background:#fff;color:var(--red);
  display:flex;align-items:center;justify-content:center;
  font-weight:800;font-size:1rem;
}
.nav-links{display:flex;gap:6px;flex-wrap:wrap;}
.nav-links a{
  color:#fff;padding:7px 13px;border-radius:6px;
  font-size:.94rem;font-weight:500;
  border:1px solid rgba(255,255,255,.28);
  transition:background .2s;
}
.nav-links a:hover{background:rgba(255,255,255,.18);color:#fff;}

/* hero */
.hero{
  background:linear-gradient(180deg,#fff5f5 0%,var(--warm-white) 100%);
  border-bottom:1px solid var(--mid-gray);
  padding:46px 0 40px;
}
.hero-grid{display:grid;grid-template-columns:1.35fr .9fr;gap:38px;align-items:center;}
h1{
  font-size:2.05rem;line-height:1.35;font-weight:800;
  color:var(--dark-red);margin-bottom:18px;letter-spacing:.3px;
}
.geo-text p{color:var(--text-soft);font-size:.98rem;margin-bottom:12px;text-align:justify;}
.geo-text strong{color:var(--dark-red);}
.hero-figure{
  border:1px solid var(--mid-gray);border-radius:var(--radius);
  overflow:hidden;background:#fff;box-shadow:var(--shadow);
}
.hero-figure figcaption{
  font-size:.82rem;color:var(--text-soft);padding:9px 12px;
  border-top:1px solid var(--mid-gray);background:var(--light-gray);
}
.tag-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px;}
.tag{
  font-size:.8rem;padding:4px 11px;border-radius:999px;
  background:#fff;border:1px solid var(--red);color:var(--red);font-weight:600;
}

/* section common */
section{padding:52px 0;}
.section-head{margin-bottom:26px;border-left:5px solid var(--red);padding-left:14px;}
.section-head h2{font-size:1.5rem;color:var(--text);font-weight:800;}
.section-head p{color:var(--text-soft);font-size:.92rem;margin-top:4px;}

/* stats */
#data-stats{background:#fff;border-top:1px solid var(--mid-gray);border-bottom:1px solid var(--mid-gray);}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.stat-card{
  border:1px solid var(--mid-gray);border-radius:var(--radius);
  padding:20px 18px;background:var(--warm-white);
  border-top:3px solid var(--red);
}
.stat-num{font-size:1.85rem;font-weight:800;color:var(--dark-red);line-height:1.2;}
.stat-label{font-size:.9rem;font-weight:600;margin-top:6px;}
.stat-desc{font-size:.82rem;color:var(--text-soft);margin-top:6px;}

/* scores */
.score-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.score-card{
  border:1px solid var(--mid-gray);border-radius:var(--radius);
  background:#fff;padding:16px 18px;box-shadow:var(--shadow);
}
.score-league{font-size:.78rem;color:var(--red);font-weight:700;letter-spacing:.4px;}
.score-teams{display:flex;justify-content:space-between;align-items:center;margin:10px 0 6px;font-weight:700;font-size:1rem;}
.score-teams span.num{color:var(--dark-red);font-size:1.15rem;}
.score-meta{font-size:.8rem;color:var(--text-soft);}
.score-note{font-size:.82rem;color:var(--text-soft);margin-top:12px;}

/* advantages */
.adv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.adv-card{
  background:#fff;border:1px solid var(--mid-gray);border-radius:var(--radius);
  padding:22px 20px;
}
.adv-card h3{font-size:1.02rem;color:var(--dark-red);margin-bottom:8px;font-weight:700;}
.adv-card p{font-size:.9rem;color:var(--text-soft);}

/* news */
#news-list{background:var(--light-gray);border-top:1px solid var(--mid-gray);border-bottom:1px solid var(--mid-gray);}
.news-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.news-item{
  background:#fff;border:1px solid var(--mid-gray);border-radius:var(--radius);
  padding:22px 22px 20px;box-shadow:var(--shadow);
  border-left:4px solid var(--red);
}
.news-item h3{font-size:1.05rem;line-height:1.55;font-weight:700;margin-bottom:8px;color:var(--text);}
.news-date{
  display:inline-block;font-size:.78rem;color:#fff;
  background:linear-gradient(120deg,var(--red),var(--dark-red));
  padding:2px 10px;border-radius:4px;margin-bottom:10px;font-weight:600;
}
.news-item p{font-size:.9rem;color:var(--text-soft);text-align:justify;margin-bottom:8px;}
.news-item p:last-child{margin-bottom:0;}
.news-item .quote{color:var(--dark-red);border-left:2px solid var(--mid-gray);padding-left:10px;font-size:.88rem;}

/* faq */
.faq-list{display:grid;gap:14px;}
.faq-item{
  background:#fff;border:1px solid var(--mid-gray);border-radius:var(--radius);
  padding:18px 22px;
}
.faq-item h3{
  font-size:1rem;color:var(--dark-red);font-weight:700;margin-bottom:8px;
  display:flex;gap:8px;align-items:flex-start;
}
.faq-item h3 .q{
  flex:0 0 22px;height:22px;border-radius:5px;background:var(--red);color:#fff;
  font-size:.76rem;display:flex;align-items:center;justify-content:center;margin-top:3px;
}
.faq-item p{font-size:.9rem;color:var(--text-soft);text-align:justify;}

/* about */
#about{background:#fff;border-top:1px solid var(--mid-gray);}
.about-grid{display:grid;grid-template-columns:1fr .8fr;gap:34px;align-items:center;}
.about-grid p{font-size:.94rem;color:var(--text-soft);margin-bottom:12px;text-align:justify;}
.about-figure{border:1px solid var(--mid-gray);border-radius:var(--radius);overflow:hidden;background:var(--warm-white);}

/* download & contact */
.dl-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.panel{
  border:1px solid var(--mid-gray);border-radius:var(--radius);
  background:#fff;padding:24px;box-shadow:var(--shadow);
}
.panel h3{font-size:1.1rem;color:var(--dark-red);margin-bottom:10px;}
.panel p{font-size:.9rem;color:var(--text-soft);margin-bottom:8px;}
.panel ul{margin-left:18px;font-size:.9rem;color:var(--text-soft);}
.panel ul li{margin-bottom:5px;}
.btn{
  display:inline-block;margin-top:12px;padding:9px 20px;border-radius:6px;
  background:linear-gradient(120deg,var(--red),var(--dark-red));color:#fff!important;
  font-weight:600;font-size:.9rem;
}
.btn:hover{opacity:.92;}

/* footer */
.site-footer{
  background:#1b1d21;color:#c9ccd2;padding:40px 0 22px;font-size:.88rem;
}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:28px;margin-bottom:26px;}
.site-footer h4{color:#fff;font-size:.98rem;margin-bottom:12px;font-weight:700;}
.site-footer p{margin-bottom:7px;line-height:1.7;}
.site-footer a{color:#e6b3b3;}
.site-footer a:hover{color:#fff;}
.footer-bottom{
  border-top:1px solid #33363c;padding-top:16px;
  display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.82rem;color:#8f949c;
}
@media(max-width:900px){
  .hero-grid,.about-grid,.dl-grid,.footer-grid{grid-template-columns:1fr;}
  .stats-grid{grid-template-columns:repeat(2,1fr);}
  .score-grid,.adv-grid{grid-template-columns:1fr;}
  .news-grid{grid-template-columns:1fr;}
  h1{font-size:1.6rem;}
}
@media(max-width:520px){
  .stats-grid{grid-template-columns:1fr;}
  .header-inner{flex-direction:column;align-items:flex-start;}
}