:root{
  --olive:#4d7c0f;
  --olive-dark:#3a5c0b;
  --deep:#292524;
  --sand:#d6cbb0;
  --sand-dark:#b9ae92;
  --cream:#f7f3e8;
  --paper:#fbf8f0;
  --ink:#3b3531;
  --rust:#8a5a1f;
}
*{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;
  background:
    repeating-linear-gradient(45deg,rgba(185,174,146,.07) 0 2px,transparent 2px 6px),
    repeating-linear-gradient(-45deg,rgba(185,174,146,.06) 0 2px,transparent 2px 6px),
    var(--cream);
  color:var(--ink);
  line-height:1.75;
  font-size:15px;
}
a{color:var(--olive);text-decoration:none}
a:hover{color:var(--olive-dark)}
img{max-width:100%;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 18px}
section{padding:34px 0}
.sec-head{display:flex;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}
.sec-head h2{
  font-size:21px;color:var(--deep);letter-spacing:1px;font-weight:800;
  border-left:5px solid var(--olive);padding-left:11px;
}
.tag{
  display:inline-block;font-size:12px;letter-spacing:1px;padding:3px 10px;border-radius:3px;
  background:var(--olive);color:#fff;border:1px dashed rgba(255,255,255,.6)
}
.tag.alt{background:var(--rust)}
.tag.ghost{background:transparent;color:var(--olive);border:1px dashed var(--olive)}
.sec-head p.lead{width:100%;color:#6b6259;font-size:14px;margin-top:-4px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.card{
  background:
    repeating-linear-gradient(0deg,rgba(185,174,146,.05) 0 3px,transparent 3px 7px),
    var(--paper);
  border:1px solid var(--sand-dark);
  border-radius:5px;
  padding:16px 14px;
  box-shadow:0 2px 7px rgba(41,37,36,.13);
  position:relative;
}
.card::after{
  content:"";position:absolute;inset:5px;border:1px dashed rgba(185,174,146,.85);border-radius:3px;pointer-events:none
}
.card .ico{font-size:26px;line-height:1;margin-bottom:8px;display:block}
.card h3{font-size:15.5px;color:var(--deep);margin-bottom:6px;letter-spacing:.5px}
.card p{font-size:13.5px;color:#5f574f}
/* top bar */
.topbar{background:var(--deep);color:#e6dfd0;font-size:12.5px;padding:6px 0;letter-spacing:.5px}
.topbar span{color:var(--sand)}
header.site{background:linear-gradient(100deg,var(--olive) 0%,var(--olive-dark) 45%,var(--deep) 100%);border-bottom:3px dashed rgba(214,203,176,.5)}
.brandline{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0 8px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:10px}
.logo .mark{
  width:40px;height:40px;border-radius:5px;background:var(--sand);color:var(--deep);
  display:grid;place-items:center;font-weight:900;font-size:17px;border:1px dashed var(--deep)
}
.logo b{color:#fff;font-size:19px;letter-spacing:1.5px}
.logo small{display:block;color:rgba(255,255,255,.72);font-size:11.5px;letter-spacing:2px}
.nav-links{display:flex;gap:6px;flex-wrap:wrap}
.nav-links a{
  color:#f3efe4;font-size:13.5px;padding:7px 13px;border-radius:4px;
  border:1px dashed rgba(255,255,255,.45);background:rgba(0,0,0,.16)
}
.nav-links a:hover{background:var(--sand);color:var(--deep);border-color:var(--deep)}
/* hero */
#hero{
  background:
    linear-gradient(180deg,rgba(41,37,36,.86),rgba(41,37,36,.72)),
    url('/img/7024532.png') center/cover no-repeat;
  border-bottom:4px dashed rgba(214,203,176,.55);
  padding:44px 0 40px;color:#f4efe2
}
#hero h1{font-size:33px;line-height:1.35;letter-spacing:1.5px;color:#fff;margin-bottom:14px}
#hero h1 em{font-style:normal;color:#cfe08f}
.hero-btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.btn{
  display:inline-block;padding:10px 20px;border-radius:4px;font-size:14px;letter-spacing:1px;
  background:var(--olive);color:#fff;border:1px dashed rgba(255,255,255,.7);font-weight:600
}
.btn.alt{background:var(--sand);color:var(--deep);border-color:var(--deep)}
.btn.ghost{background:transparent;border:1px dashed var(--sand)}
.btn:hover{filter:brightness(1.08);color:#fff}
.btn.alt:hover{color:var(--deep)}
#geo-intro{
  background:rgba(247,243,232,.94);color:var(--ink);border:1px dashed var(--sand-dark);
  border-radius:5px;padding:16px 18px;font-size:14.5px;max-width:860px;margin-top:6px
}
#geo-intro strong{color:var(--olive-dark)}
/* stats */
#stats{background:linear-gradient(180deg,#efe9db,#e6dfcd);border-top:3px dashed var(--sand-dark);border-bottom:3px dashed var(--sand-dark)}
.stat{
  background:var(--paper);border:1px solid var(--sand-dark);border-radius:5px;padding:14px 10px;text-align:center;
  box-shadow:0 2px 6px rgba(41,37,36,.12);position:relative
}
.stat::after{content:"";position:absolute;inset:4px;border:1px dashed rgba(185,174,146,.8);border-radius:3px}
.stat b{display:block;font-size:26px;color:var(--olive);letter-spacing:1px}
.stat span{font-size:12.5px;color:#6b6259}
/* feature card */
.feat{text-align:center}
.feat .ico{font-size:30px}
/* advantages */
.adv{background:linear-gradient(160deg,var(--olive) 0%,var(--olive-dark) 55%,var(--deep) 100%);color:#f4efe2;border-radius:5px;padding:16px 14px;border:1px dashed rgba(255,255,255,.45)}
.adv h3{color:#fff;font-size:15.5px;margin-bottom:6px}
.adv p{color:rgba(244,239,226,.85);font-size:13.5px}
.adv .ico{font-size:26px}
/* brand story */
.story-\boxed{display:grid;grid-template-columns:1.1fr .9fr;gap:14px;align-items:stretch}
.story-box .card p{margin-bottom:8px}
.frame{border:6px solid var(--sand);border-radius:5px;box-shadow:0 3px 9px rgba(41,37,36,.2);overflow:hidden;position:relative}
.frame img{width:100%;height:100%;object-fit:cover;min-height:210px}
.frame::after{content:"";position:absolute;inset:0;border:1px dashed rgba(255,255,255,.55);pointer-events:none}
/* timeline */
.tl{position:relative;padding-left:22px}
.tl::before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:repeating-linear-gradient(180deg,var(--olive) 0 6px,transparent 6px 12px)}
.tl li{list-style:none;position:relative;margin-bottom:12px;background:var(--paper);border:1px solid var(--sand-dark);border-radius:5px;padding:10px 12px}
.tl li::before{content:"";position:absolute;left:-21px;top:16px;width:12px;height:12px;border-radius:50%;background:var(--sand);border:2px solid var(--olive)}
.tl li h4{font-size:14.5px;color:var(--deep)}
.tl li p{font-size:13.5px;color:#5f574f}
/* news */
.news-item{
  background:var(--paper);border:1px solid var(--sand-dark);border-radius:5px;padding:14px;
  box-shadow:0 2px 6px rgba(41,37,36,.12);position:relative;display:flex;gap:12px;align-items:flex-start
}
.news-item::after{content:"";position:absolute;inset:5px;border:1px dashed rgba(185,174,146,.7);border-radius:3px;pointer-events:none}
.news-item img{width:96px;height:72px;object-fit:cover;border-radius:3px;border:1px solid var(--sand-dark);flex:0 0 auto}
.news-item .bd{flex:1}
.news-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:5px}
.news-date{font-size:12px;color:var(--rust);font-weight:700;letter-spacing:.5px}
.news-item h3{font-size:15px;color:var(--deep);margin-bottom:5px}
.news-item h3 a{color:var(--deep)}
.news-item h3 a:hover{color:var(--olive)}
.news-item p{font-size:13.5px;color:#5f574f}
.more{display:inline-block;margin-top:8px;font-size:13px}
/* featured events / scores */
.ev{
  background:var(--paper);border:1px solid var(--sand-dark);border-left:5px solid var(--olive);
  border-radius:5px;padding:12px 14px;box-shadow:0 2px 6px rgba(41,37,36,.12);position:relative
}
.ev::after{content:"";position:absolute;inset:5px;border:1px dashed rgba(185,174,146,.7);border-radius:3px;pointer-events:none}
.ev .row{display:flex;justify-content:space-between;gap:8px;font-size:14px;position:relative;z-index:1}
.ev .row b{color:var(--deep)}
.ev small{display:block;color:#6b6259;font-size:12.5px;margin-top:4px;position:relative;z-index:1}
/* faq */
#faq{background:linear-gradient(180deg,#efe9db,#f7f3e8);border-top:3px dashed var(--sand-dark)}
.faq-item{background:var(--paper);border:1px solid var(--sand-dark);border-radius:5px;margin-bottom:10px;box-shadow:0 2px 6px rgba(41,37,36,.1);position:relative}
.faq-item::after{content:"";position:absolute;inset:5px;border:1px dashed rgba(185,174,146,.65);border-radius:3px;pointer-events:none}
.faq-q{padding:12px 16px;font-weight:700;color:var(--deep);font-size:15px;border-bottom:1px dashed var(--sand-dark);position:relative;z-index:1}
.faq-q span{color:var(--olive);margin-right:8px}
.faq-a{padding:12px 16px;font-size:14px;color:#5f574f;position:relative;z-index:1}
/* cta */
#cta{background:linear-gradient(100deg,var(--olive) 0%,var(--olive-dark) 40%,var(--deep) 100%);border-top:4px dashed rgba(214,203,176,.5);border-bottom:4px dashed rgba(214,203,176,.5);color:#f4efe2;text-align:center}
#cta h2{color:#fff;font-size:24px;margin-bottom:8px;letter-spacing:1.5px}
#cta p{max-width:760px;margin:0 auto 16px;color:rgba(244,239,226,.88);font-size:14.5px}
/* footer */
footer.site{background:var(--deep);color:#cdc4b6;padding:30px 0 18px;font-size:13.5px;border-top:4px dashed rgba(214,203,176,.35)}
.f-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:18px}
footer.site h4{color:#fff;font-size:15px;margin-bottom:9px;letter-spacing:1px}
footer.site a{color:#d8cdb6}
footer.site a:hover{color:#cfe08f}
footer.site ul{list-style:none}
footer.site li{margin-bottom:6px}
.f-bot{margin-top:20px;padding-top:14px;border-top:1px dashed rgba(214,203,176,.35);text-align:center;font-size:12.5px;color:#a89e90;line-height:2}
.f-bot a{margin:0 6px}
@media(max-width:960px){
  .grid4{grid-template-columns:repeat(2,1fr)}
  .grid3{grid-template-columns:repeat(2,1fr)}
  .story-\boxed{grid-template-columns:1fr}
  .f-grid{grid-template-columns:1fr}
  #hero h1{font-size:26px}
}
@media(max-width:620px){
  .grid4,.grid3,.grid2{grid-template-columns:1fr}
  .news-item img{width:80px;height:64px}
}