*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    background-color:#d6d3d1;
    background-image:radial-gradient(rgba(68,64,60,.07) 1px,transparent 1px),radial-gradient(rgba(153,27,27,.05) 1px,transparent 1px);
    background-size:7px 7px,13px 13px;
    background-position:0 0,4px 6px;
    color:#44403c;
    font-family:"Segoe UI","Helvetica Neue",Arial,"Microsoft YaHei","微软雅黑","PingFang SC",sans-serif;
    font-size:16px;
    line-height:1.8;
    -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,p,ul,ol,figure{margin:0}
a{color:#991b1b}
img{max-width:100%}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}

/* header */
.site-header{position:sticky;top:0;z-index:60;background:#44403c;border-bottom:3px double #991b1b;box-shadow:0 3px 0 rgba(68,64,60,.22)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:11px 0}
.brand{display:flex;align-items:center;gap:10px;color:#e7e5e4;font-weight:700;letter-spacing:.2em;font-size:14px;text-decoration:none}
.brand i{display:inline-block;width:12px;height:12px;background:#991b1b;border:2px solid #e7e5e4}
.nav-links{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:14px}
.nav-links a{color:#d6d3d1;text-decoration:none;letter-spacing:.06em;padding:4px 0;border-bottom:1px solid transparent}
.nav-links a:hover{color:#f5f5f4;border-bottom-color:#991b1b}

/* hero */
.hero{padding:42px 0 8px}
.eyebrow{font-size:12px;letter-spacing:.32em;color:#991b1b;text-transform:uppercase;margin-bottom:12px;font-weight:700}
h1{font-size:clamp(23px,3.4vw,36px);line-height:1.4;letter-spacing:.02em;color:#3f3b38}
.hero-sub{margin-top:12px;font-size:14px;color:#78716c;letter-spacing:.04em}
.geo-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:30px;align-items:start;margin-top:26px}
.geo-list{list-style:none;padding:0;margin:0}
.geo-list li{margin-bottom:16px;padding-left:16px;border-left:2px solid #a8a29e}
.geo-list b{display:block;font-size:13px;letter-spacing:.16em;color:#991b1b;margin-bottom:2px}
.geo-list p{font-size:15px;line-height:1.85}

/* figure */
.figure img{width:100%;display:block;border:1px solid #44403c;box-shadow:6px 6px 0 rgba(68,64,60,.22);filter:sepia(.15) contrast(1.03)}
.figure figcaption{font-size:12px;color:#78716c;letter-spacing:.08em;margin-top:8px;text-align:right}

/* panel */
.panel{background:#e7e5e4;border:1px solid #44403c;box-shadow:5px 5px 0 rgba(68,64,60,.2);padding:26px 28px;margin:34px 0;position:relative}
.panel::after{content:"";position:absolute;top:6px;left:6px;right:6px;bottom:6px;border:1px dashed rgba(68,64,60,.3);pointer-events:none}
.sec-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:20px;position:relative;z-index:1}
.sec-head h2{font-size:21px;letter-spacing:.08em;position:relative;padding-left:16px;color:#3f3b38}
.sec-head h2::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:6px;background:#991b1b}
.sec-head .en{font-size:11px;letter-spacing:.24em;color:#78716c;text-transform:uppercase}
.panel-body{position:relative;z-index:1}

/* timeline */
.timeline{list-style:none;margin:0;padding:2px 0 2px 24px;border-left:2px solid #a8a29e}
.timeline li{position:relative;margin-bottom:20px}
.timeline li:last-child{margin-bottom:0}
.timeline li::before{content:"";position:absolute;left:-32px;top:9px;width:10px;height:10px;background:#991b1b;border:2px solid #e7e5e4;box-shadow:0 0 0 2px #44403c}
.timeline h3{font-size:16px;letter-spacing:.05em;margin-bottom:2px}
.timeline p{font-size:14.5px;color:#57534e}

/* grids */
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}
.card{background:#f5f5f4;border:1px solid #44403c;padding:20px;box-shadow:4px 4px 0 rgba(68,64,60,.16)}
.card h3{font-size:16px;letter-spacing:.05em;margin-bottom:6px;color:#3f3b38}
.card p{font-size:14px;color:#57534e;line-height:1.8}
.card .num{display:block;font-size:11px;letter-spacing:.24em;color:#991b1b;margin-bottom:6px}

/* stats */
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}
.stat{background:#f5f5f4;border:1px solid #a8a29e;padding:18px 20px}
.stat b{display:block;font-size:31px;line-height:1.2;color:#991b1b;letter-spacing:.02em}
.stat span{display:block;font-size:13px;color:#57534e;margin-top:6px}

/* lists */
.plain{list-style:none;padding:0;margin:0}
.plain li{background:#f5f5f4;border-left:4px solid #991b1b;border-top:1px solid #d6d3d1;padding:14px 18px;margin-bottom:10px;font-size:14.5px}
.plain li b{letter-spacing:.04em}

/* news */
.news-item{border-top:1px solid #a8a29e;padding:22px 0}
.news-item:first-of-type{border-top:none;padding-top:4px}
.news-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12.5px;color:#78716c;margin-bottom:8px}
.tag{display:inline-block;background:#44403c;color:#e7e5e4;padding:2px 10px;font-size:11.5px;letter-spacing:.12em;text-decoration:none}
.tag:hover{background:#991b1b;color:#f5f5f4}
.news-item h3{font-size:17.5px;line-height:1.55;letter-spacing:.02em;margin-bottom:8px;color:#3f3b38}
.news-item p{font-size:14.5px;color:#57534e;margin-bottom:6px}
.news-item .quote{color:#991b1b;border-left:3px solid #991b1b;padding-left:12px;font-style:normal}

/* testimonials */
.quote-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.quote-card{background:#f5f5f4;border:1px solid #a8a29e;padding:20px;font-size:14.5px;line-height:1.85}
.quote-card span{display:block;margin-top:10px;font-size:12.5px;letter-spacing:.08em;color:#991b1b}

/* faq */
details.faq-item{background:#f5f5f4;border:1px solid #a8a29e;padding:14px 18px;margin-bottom:12px}
details.faq-item[open]{border-color:#991b1b;box-shadow:3px 3px 0 rgba(153,27,27,.14)}
details.faq-item summary{cursor:pointer;font-weight:700;font-size:15.5px;color:#3f3b38;letter-spacing:.02em;list-style:none;position:relative;padding-left:22px}
details.faq-item summary::-webkit-details-marker{display:none}
details.faq-item summary::before{content:"+";position:absolute;left:0;top:0;color:#991b1b;font-weight:700}
details.faq-item[open] summary::before{content:"−"}
details.faq-item p{margin-top:10px;font-size:14.5px;color:#57534e;line-height:1.85}

/* cta */
.cta-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:26px;align-items:center}
.btn{display:inline-block;padding:11px 22px;background:#991b1b;color:#f5f5f4;text-decoration:none;border:1px solid #44403c;box-shadow:3px 3px 0 rgba(68,64,60,.28);font-size:14px;letter-spacing:.1em}
.btn:hover{background:#7f1616}
.btn.ghost{background:transparent;color:#44403c;box-shadow:3px 3px 0 rgba(68,64,60,.16)}
.btn.ghost:hover{background:#d6d3d1}
.btn-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}

/* footer */
.site-footer{background:#44403c;color:#d6d3d1;margin-top:40px;border-top:3px double #991b1b;padding:28px 0 22px;font-size:13.5px;line-height:2}
.site-footer a{color:#e7e5e4;text-decoration:none;border-bottom:1px solid #991b1b}
.site-footer a:hover{color:#f5f5f4}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;align-items:start}
.site-footer p{margin:0}
.copyright{margin-top:14px;padding-top:12px;border-top:1px solid #57534e;font-size:12.5px;color:#a8a29e;letter-spacing:.06em}

@media (max-width:820px){
    .geo-grid,.cta-grid,.footer-grid{grid-template-columns:1fr}
    .panel{padding:20px 18px}
    .hero{padding-top:28px}
}