:root{
  --wine:#9f1239;
  --dark-red:#4c0519;
  --gold:#e3b04b;
  --gold-soft:#f2d18b;
  --cream:#fdf6ec;
  --ink:#2a0a12;
}
*{margin:0;padding:0;box-sizing:border-box;font-family:"Segoe UI","Helvetica Neue",Arial,"Microsoft YaHei","微软雅黑","PingFang SC",sans-serif !important;}
html{scroll-behavior:smooth;}
body{
  background:linear-gradient(160deg,#4c0519 0%,#7a0d2b 35%,#9f1239 70%,#5b0620 100%);
  background-attachment:fixed;
  color:var(--cream);
  line-height:1.75;
  font-size:16px;
}
img{max-width:100%;display:block;border-radius:10px;}
a{color:var(--gold-soft);text-decoration:none;transition:.25s;}
a:hover{color:#fff;}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px;}

/* header */
header.site-head{
  position:sticky;top:0;z-index:50;
  background:linear-gradient(90deg,rgba(76,5,25,.97),rgba(159,18,57,.95));
  border-bottom:2px solid var(--gold);
  box-shadow:0 6px 26px rgba(0,0,0,.45);
}
.head-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 20px;max-width:1180px;margin:0 auto;flex-wrap:wrap;}
.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:20px;letter-spacing:.5px;color:var(--gold-soft);}
.brand span.logo{
  width:40px;height:40px;border-radius:50%;
  background:radial-gradient(circle at 30% 30%,#f2d18b,#9f1239 70%);
  border:2px solid var(--gold);
  display:flex;align-items:center;justify-content:center;font-size:18px;
}
.nav-links{display:flex;flex-wrap:wrap;gap:6px;}
.nav-links a{
  padding:8px 16px;border-radius:999px;font-size:15px;color:#fdf6ec;
  border:1px solid rgba(227,176,75,.4);
  background:rgba(76,5,25,.35);
}
.nav-links a:hover{background:rgba(227,176,75,.22);border-color:var(--gold);color:#fff;}

/* hero */
#hero{
  position:relative;padding:70px 0 60px;
  background:linear-gradient(120deg,rgba(76,5,25,.92),rgba(159,18,57,.55));
  border-bottom:1px solid rgba(227,176,75,.35);
}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;}
h1{
  font-size:38px;line-height:1.35;color:#fff;letter-spacing:.5px;
  text-shadow:0 2px 16px rgba(0,0,0,.5);
  border-left:6px solid var(--gold);padding-left:18px;
  font-weight:700;
}
.tagline{margin-top:18px;color:var(--gold-soft);font-size:17px;letter-spacing:1px;}
.hero-btns{margin-top:26px;display:flex;gap:14px;flex-wrap:wrap;}
.btn{
  display:inline-block;padding:12px 28px;border-radius:999px;font-weight:600;
  background:linear-gradient(90deg,#e3b04b,#c98b26);color:#3a0713;
  border:1px solid #f2d18b;box-shadow:0 8px 22px rgba(0,0,0,.35);
}
.btn:hover{background:linear-gradient(90deg,#f2d18b,#e3b04b);color:#2a0a12;}
.btn.ghost{background:transparent;color:var(--gold-soft);border:1px solid var(--gold);box-shadow:none;}
.btn.ghost:hover{background:rgba(227,176,75,.18);color:#fff;}

/* sections */
section{padding:60px 0;}
.sec-title{font-size:27px;color:#fff;margin-bottom:10px;position:relative;padding-left:16px;font-weight:700;}
.sec-title::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:5px;border-radius:4px;background:linear-gradient(180deg,var(--gold),#9f1239);}
.sec-sub{color:rgba(253,246,236,.78);margin-bottom:32px;font-size:15px;}

#geo-intro p{
  background:linear-gradient(120deg,rgba(76,5,25,.72),rgba(159,18,57,.35));
  border:1px solid rgba(227,176,75,.42);border-left:5px solid var(--gold);
  border-radius:12px;padding:24px 26px;font-size:16.5px;color:#fdf6ec;
  box-shadow:0 12px 34px rgba(0,0,0,.32);
}

/* cards */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px;}
.card{
  background:linear-gradient(160deg,rgba(76,5,25,.88),rgba(122,13,43,.7));
  border:1px solid rgba(227,176,75,.35);
  border-radius:14px;padding:26px 22px;position:relative;overflow:hidden;
  box-shadow:0 12px 30px rgba(0,0,0,.32);
}
.card::after{content:"";position:absolute;inset:8px;border:1px solid rgba(227,176,75,.18);border-radius:10px;pointer-events:none;}
.card h3{color:var(--gold-soft);font-size:19px;margin-bottom:10px;}
.card p{color:rgba(253,246,236,.86);font-size:15px;}
.card .ico{font-size:26px;margin-bottom:12px;display:block;}

/* stats */
#stats .stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px;}
.stat{
  text-align:center;padding:26px 16px;border-radius:14px;
  background:linear-gradient(160deg,rgba(159,18,57,.55),rgba(76,5,25,.9));
  border:1px solid rgba(227,176,75,.45);
}
.stat b{display:block;font-size:32px;color:var(--gold-soft);letter-spacing:1px;}
.stat span{font-size:14px;color:rgba(253,246,236,.8);}

/* event list */
.event-list{display:grid;gap:16px;}
.event{
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  padding:18px 22px;border-radius:12px;
  background:linear-gradient(90deg,rgba(76,5,25,.9),rgba(159,18,57,.4));
  border:1px solid rgba(227,176,75,.32);
}
.event h4{color:#fff;font-size:17px;}
.event small{color:rgba(253,246,236,.75);}
.event .tag{
  padding:5px 14px;border-radius:999px;font-size:13px;
  background:rgba(227,176,75,.16);border:1px solid var(--gold);color:var(--gold-soft);
}

/* two col */
.two{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;}
.two p{color:rgba(253,246,236,.88);margin-bottom:14px;}

/* timeline */
.tl{border-left:3px solid rgba(227,176,75,.5);padding-left:26px;display:grid;gap:26px;}
.tl-item{position:relative;}
.tl-item::before{
  content:"";position:absolute;left:-35px;top:7px;width:15px;height:15px;border-radius:50%;
  background:linear-gradient(135deg,#f2d18b,#9f1239);border:2px solid var(--gold);
}
.tl-item h4{color:var(--gold-soft);font-size:18px;margin-bottom:6px;}
.tl-item p{color:rgba(253,246,236,.85);font-size:15px;}

/* rankings */
table.rank{width:100%;border-collapse:collapse;border:1px solid rgba(227,176,75,.35);border-radius:12px;overflow:hidden;}
table.rank th,table.rank td{padding:13px 16px;text-align:left;font-size:15px;border-bottom:1px solid rgba(227,176,75,.18);}
table.rank th{background:rgba(76,5,25,.9);color:var(--gold-soft);font-weight:600;}
table.rank td{background:rgba(122,13,43,.32);color:rgba(253,246,236,.9);}
table.rank tr:last-child td{border-bottom:none;}

/* testimonials */
.quote{font-size:15px;color:rgba(253,246,236,.9);margin-bottom:14px;}
.who{color:var(--gold-soft);font-size:14px;}

/* news */
.news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;}
.news-item{
  background:linear-gradient(160deg,rgba(76,5,25,.85),rgba(122,13,43,.6));
  border:1px solid rgba(227,176,75,.32);border-radius:14px;padding:22px;
}
.news-item h3{font-size:17px;color:#fff;margin-bottom:10px;line-height:1.6;}
.news-item .date{
  display:inline-block;font-size:13px;color:#3a0713;background:var(--gold-soft);
  padding:3px 12px;border-radius:999px;margin-bottom:12px;font-weight:600;
}
.news-item p{font-size:14.5px;color:rgba(253,246,236,.85);}

/* faq */
.faq-item{
  border:1px solid rgba(227,176,75,.35);border-radius:12px;margin-bottom:16px;overflow:hidden;
  background:linear-gradient(120deg,rgba(76,5,25,.9),rgba(159,18,57,.35));
}
.faq-item h3{
  font-size:16.5px;color:var(--gold-soft);padding:18px 22px;
  border-bottom:1px solid rgba(227,176,75,.22);
}
.faq-item p{padding:18px 22px;font-size:15px;color:rgba(253,246,236,.87);}

/* cta */
#cta .cta-box{
  text-align:center;padding:52px 26px;border-radius:18px;
  background:linear-gradient(135deg,rgba(159,18,57,.75),rgba(76,5,25,.95));
  border:2px solid var(--gold);box-shadow:0 18px 46px rgba(0,0,0,.42);
}
#cta .cta-box h2{font-size:28px;color:#fff;margin-bottom:14px;}
#cta .cta-box p{color:rgba(253,246,236,.88);max-width:720px;margin:0 auto 24px;}

/* partners */
.partner-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;}
.partner{
  text-align:center;padding:20px 12px;border-radius:12px;font-size:15px;
  background:rgba(76,5,25,.55);border:1px solid rgba(227,176,75,.3);color:var(--gold-soft);
}

/* footer */
footer.site-foot{
  background:linear-gradient(180deg,rgba(76,5,25,.96),rgba(42,4,14,1));
  border-top:2px solid var(--gold);padding:46px 0 26px;margin-top:20px;
}
.foot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px;}
.foot-grid h4{color:var(--gold-soft);margin-bottom:12px;font-size:16px;}
.foot-grid p,.foot-grid li{color:rgba(253,246,236,.82);font-size:14.5px;list-style:none;margin-bottom:6px;}
.foot-bottom{
  margin-top:30px;padding-top:20px;border-top:1px solid rgba(227,176,75,.25);
  text-align:center;font-size:14px;color:rgba(253,246,236,.75);
}
@media(max-width:820px){
  .hero-grid,.two{grid-template-columns:1fr;}
  h1{font-size:28px;}
  .head-inner{justify-content:center;}
}