:root{
  --graphite:#6b7280;
  --graphite-deep:#374151;
  --graphite-dark:#1f2937;
  --ink-green:#2f5d4b;
  --ink-green-soft:#3f7a63;
  --off-white:#f4f2ec;
  --card:#2b3441;
  --line:rgba(244,242,236,.14);
  --muted:rgba(244,242,236,.66);
  --shadow:0 6px 22px rgba(15,23,42,.18);
  --radius:10px;
}
*{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:linear-gradient(180deg,#374151 0%,#6b7280 45%,#374151 100%);
  color:var(--off-white);
  line-height:1.75;
  font-size:16px;
  -webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
.wrap{max-width:1160px;margin:0 auto;padding:0 22px}

/* NAV */
header.nav{
  position:sticky;top:0;z-index:50;
  background:rgba(31,41,55,.92);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 22px;max-width:1160px;margin:0 auto;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.5px;font-size:18px}
.logo .mark{width:30px;height:30px;border-radius:7px;background:linear-gradient(135deg,var(--ink-green),var(--graphite));display:flex;align-items:center;justify-content:center;font-size:14px}
.nav-links{display:flex;flex-wrap:wrap;gap:6px}
.nav-links a{
  padding:7px 14px;border-radius:8px;font-size:14.5px;color:var(--muted);
  border:1px solid transparent;transition:.25s;
}
.nav-links a:hover{color:var(--off-white);border-color:var(--line);background:rgba(244,242,236,.06)}

/* HERO */
#hero{padding:70px 0 40px;background:linear-gradient(160deg,rgba(47,93,75,.35),rgba(55,65,81,.15))}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center}
h1{font-size:clamp(28px,4vw,44px);line-height:1.28;font-weight:800;letter-spacing:.5px}
h1 span{color:#8fd0b4}
#geo-intro{margin-top:22px;font-size:16.5px;color:rgba(244,242,236,.82);max-width:640px}
.badge{display:inline-block;padding:5px 13px;border:1px solid rgba(143,208,180,.5);color:#a9dcc7;border-radius:999px;font-size:13px;margin-bottom:18px;letter-spacing:1px}
.hero-img{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:var(--card)}
.hero-img img{width:100%;height:340px;object-fit:cover;border-radius:var(--radius) var(--radius) 0 0;filter:saturate(.85)}
.hero-cap{padding:12px 16px;font-size:13.5px;color:var(--muted);border-top:1px solid var(--line)}

/* SECTIONS */
section{padding:56px 0}
.sec-head{margin-bottom:30px}
.kicker{font-size:13px;letter-spacing:3px;color:#8fd0b4;text-transform:uppercase}
h2{font-size:clamp(22px,2.6vw,30px);font-weight:750;margin-top:8px;letter-spacing:.5px}
.sec-desc{color:rgba(244,242,236,.7);margin-top:10px;max-width:760px;font-size:15.4px}

/* STATS */
#stats{background:rgba(31,41,55,.55);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.stat{background:linear-gradient(160deg,#39434f,#2b3441);border:1px solid var(--line);border-radius:var(--radius);padding:24px 20px;box-shadow:var(--shadow)}
.stat b{display:block;font-size:34px;color:#8fd0b4;font-weight:800;letter-spacing:1px}
.stat span{font-size:14px;color:var(--muted)}

/* CARDS two column */
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}
.card{
  background:linear-gradient(175deg,#333d49,#28313c);
  border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;
  transition:transform .3s,border-color .3s;
}
.card:hover{transform:translateY(-4px);border-color:rgba(143,208,180,.45)}
.card figure{overflow:hidden}
.card img{width:100%;height:230px;object-fit:cover;border-radius:6px 6px 0 0;filter:saturate(.82) contrast(1.02)}
.card-body{padding:22px 24px 26px;display:flex;flex-direction:column;gap:10px;flex:1}
.tag{align-self:flex-start;font-size:12px;padding:3px 11px;border-radius:999px;background:rgba(47,93,75,.5);border:1px solid rgba(143,208,180,.4);color:#a9dcc7}
.tag.alt{background:rgba(107,114,128,.4);border-color:var(--line);color:rgba(244,242,236,.75)}
.card h3{font-size:18.5px;font-weight:700;line-height:1.5}
.card p{font-size:14.8px;color:rgba(244,242,236,.74)}
.more{margin-top:auto;font-size:13.6px;color:#8fd0b4;border-top:1px dashed var(--line);padding-top:12px}

/* advantages */
.adv-list{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.adv{background:rgba(43,52,65,.8);border:1px solid var(--line);border-left:3px solid var(--ink-green-soft);border-radius:8px;padding:22px}
.adv h4{font-size:17px;margin-bottom:8px}
.adv p{font-size:14.6px;color:rgba(244,242,236,.72)}

/* events */
.ev{display:flex;justify-content:space-between;gap:18px;align-items:center;background:rgba(43,52,65,.75);border:1px solid var(--line);border-radius:8px;padding:16px 20px;margin-bottom:12px;flex-wrap:wrap}
.ev .teams{font-weight:650;font-size:16px}
.ev .meta{font-size:13.5px;color:var(--muted)}
.ev .odd{font-family:"Segoe UI",sans-serif;background:rgba(47,93,75,.45);border:1px solid rgba(143,208,180,.35);border-radius:6px;padding:6px 12px;font-size:13.5px;color:#bfe6d6}

/* insights */
.ins-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
.ins-block{background:rgba(43,52,65,.7);border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.ins-block h4{font-size:18px;margin-bottom:10px;color:#a9dcc7}
.ins-block p{font-size:15px;color:rgba(244,242,236,.76);margin-bottom:10px}

/* news */
#news-list .cards .card img{height:200px}
.news-date{font-size:13px;color:#8fd0b4;letter-spacing:.5px}

/* reviews */
.rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.rev{background:linear-gradient(170deg,#39434f,#2b3441);border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.rev p{font-size:14.8px;color:rgba(244,242,236,.78)}
.rev .who{margin-top:14px;font-size:13.5px;color:#8fd0b4}
.stars{color:#d9c58a;letter-spacing:3px;font-size:14px;margin-bottom:10px}

/* coverage */
.cov-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.cov{border:1px solid var(--line);background:rgba(43,52,65,.7);border-radius:8px;padding:18px;text-align:center}
.cov .ic{font-size:26px}
.cov b{display:block;margin-top:8px;font-size:15.5px}
.cov span{font-size:13px;color:var(--muted)}

/* faq */
.faq-item{border:1px solid var(--line);border-radius:var(--radius);background:rgba(43,52,65,.72);padding:20px 24px;margin-bottom:14px}
.faq-item h3{font-size:17px;margin-bottom:10px;color:#bfe6d6}
.faq-item p{font-size:15px;color:rgba(244,242,236,.78)}

/* timeline */
.tl{position:relative;border-left:2px solid rgba(143,208,180,.35);margin-left:10px;padding-left:26px}
.tl-item{margin-bottom:22px;position:relative}
.tl-item::before{content:"";position:absolute;left:-33px;top:7px;width:12px;height:12px;border-radius:50%;background:#8fd0b4;border:2px solid #2b3441}
.tl-item b{font-size:16.5px}
.tl-item p{font-size:14.6px;color:rgba(244,242,236,.72)}

/* cta */
#cta{background:linear-gradient(135deg,rgba(47,93,75,.75),rgba(55,65,81,.9));border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center}
.cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:22px}
.btn{display:inline-block;padding:13px 30px;border-radius:8px;font-size:15px;font-weight:650;transition:.25s}
.btn-p{background:var(--off-white);color:#1f2937}
.btn-s{border:1px solid rgba(244,242,236,.5);color:var(--off-white)}
.btn:hover{transform:translateY(-2px)}

/* footer */
footer{background:#1f2937;border-top:1px solid var(--line);padding:44px 0 26px;font-size:14.4px;color:var(--muted)}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px}
.foot-grid h5{color:var(--off-white);font-size:15.5px;margin-bottom:12px}
.foot-grid a{display:block;padding:4px 0;font-size:14.2px}
.foot-grid a:hover{color:#8fd0b4}
.foot-bottom{margin-top:30px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:13.4px}
.foot-bottom a{color:#8fd0b4}

@media(max-width:900px){
  .hero-grid{grid-template-columns:1fr}
  .stat-grid{grid-template-columns:repeat(2,1fr)}
  .cards{grid-template-columns:1fr}
  .adv-list{grid-template-columns:1fr}
  .ins-grid{grid-template-columns:1fr}
  .rev-grid{grid-template-columns:1fr}
  .cov-grid{grid-template-columns:repeat(2,1fr)}
  .foot-grid{grid-template-columns:1fr}
}